zoukankan      html  css  js  c++  java
  • java基础知识2--抽象 多态,继承等

    用super访问父类的方法时,调用的是父类的变量

    class Super 
    {
        int a=1;
        char b='c';
        public void show(){
            System.out.println("Super's  show() :"+a+"     "+b);
        }
        public static void main(String[] args) 
        {
            Super s = new Test();
            Test t = new Test();
            s.show();
            t.show();
        }
    }
    
    class Test extends Super
    {
        float a=7.9f;
        String b="dtrin";
        public void show()
        {
            System.out.println("Test's show() :"+a+"     "+b);
            super.show();//此处输出的是父类的变量的值
        }
    }

    Java面向对象编程的四大特征:

    抽象:

    把一类事物共有的属性和行为提取出来,形成一个物理模型(模板),这种研究问题的方法称为抽象。

    封装:

    把抽象出的数据和对数据的操作封装在一起,数据被保护在内部,程序的其他部分只有通过被授权的操作(成员方法),才能对数据进行操作。

     

    访问控制修饰符:

    Public:对外公开。

    Protected:对子类和同一个包的类公开。

    Default(没有修饰符):对同一个包的类公开。

    Private:只有类本身可以访问。

     

    继承:

    1.父类的private属性和方法不能被继承,其他都可以。

    2.单继承,不能继承多个父类。可以用接口解决多重继承的问题。

    3.Java 中所有类的父类都是java.lang.Object

    4.Jdk6中有202个包3777个类,接口,异常,美剧,注释和错误。

     

    重载:

    仅仅是返回类型不一样不能构成重载。

    仅仅是修饰符不一样不能构成重载。

    1.方法名相同。

    2.方法的参数类型,个数,顺序至少有一项不同。

    3.返回类型可以不相同。

    4.方法的修饰符可以不同。

     

    方法的覆盖(重写):

    1.子类的方法的返回类型,参数,方法名称,要和父类方法的返回类型,参数,方法名称完全一致。

    2.子类方法不能缩小父类方法的访问权限。

     

    多态:

    指一个引用(类型)在不同情况下的多种状态。用过指向父类的指针,来调用在不同子类中实现的方法。

    class Animal
    {
          public void cry()
    {
    System.out.println("动物的叫声");
    }  
    
    public static void main(String args[])
    {
        Animal an = new cat();//父类的引用变量引用子类的实例,这种转换自动完成
       an.cry();
       an=new Dog();
       an.cry(); 
    }
    }
    class Cat extends Animal{
         public void cry()
    {
    System.out.println("猫的叫声");
    }  
    }
    class Dog extends Animal{
         public void cry()
    {
    System.out.println("狗的叫声");
    }  
    }

     final:

    1.不希望父类的某个方法不被子类覆盖(override)时,可以用final关键字修饰。

    2.不希望类的某个变量的值被修改时。如果一个变量时final,必须赋初值。

     3.不希望类被继承时,可以用final修饰。

     注意:

    1.final修饰的变量又称为常量,一般用xx_xx_xx来命名。

    2.安全考虑时可以使用。

  • 相关阅读:
    关于参数,集合的演示
    Process
    常见的IT 日语
    C#格式化数值
    提高C#编程水平的50个要点
    .net中C#代码与javaScript函数的相互调用问题
    Rundll32.exe
    徐家骏:我在华为工作十年的感悟
    转换人民币大小金额
    29个Ajax Javascript相册资源
  • 原文地址:https://www.cnblogs.com/bersaty/p/3237713.html
Copyright © 2011-2022 走看看