继承

构造器  
构造器是类中的一个特殊的方法,该方法在对象实例化时被调用。构造器上午用途是当对象实例化时,初始化对象中的对象。构造器必须满足下面两个属性:  
1. 构造器的名称必须与类名相同;  
2. 构造器不能声明返回值,也不能返回void。  

如下面的代码:  
  
     public class Pet {
        String name;
        int age;
        String colore;
        public Pet(){
            System.out.println("我是构造函数"); //构造函数
        }
        public void show(){
            System.out.println("你好我是:"+name+",今年"+age+"岁了,"+colore+"色的!");
        }
     }
  
构造器与方法类似,但它不是方法。每个类都必须有一个构造器,如果我们没有给类添加构造器,编译器会自动给我们添加一个构造器,默认构造器的形式参数列表是空的,如果我们给类添加了构造器,编译器就不会为类添加默认构造器。  
构造器的使用  
一个类可以有多个构造器,这种情况下,要调用哪个构造器就取决于new运算符所使用的实际参数。  
继承(Inheritance)   
什么是继承  
 
在面向对象编程中,可以通过扩展一个已有的类,并继承该类的属性和行为,来创建一个新的类,这种方式成为继承。  
已有的类称为父类,而新类成为子类,父类也叫基类、超类。  
使用继承不仅可以重用已有的代码,从而避免代码重复,还可以创建一个更容易维护和修改代码的程序。  
##使用“is a”关系判断继承  
“is a”关系用于判断父类和子类的继承关系是否正确。当使用继承时,我们必须能够说子类“is a(是一个)”父类。如果这个语句是真的,那么继承关系就是对的。  
Java中继承的实现  
在Java中,一个类使用关键字extends继承其他类。关键字extends出现在类声明时的类名后,extends后面跟着的是要继承的类的名称。例如,下面的语句用于声明Dog类是Pet类的子类:  
  
    public class Dog extends Pet{             //extends继承Pet类
        String name;
        public Dog(){
            super();                         //调用父类的构造器
            System.out.println("我是子类构造函数");
        }
    }  
单继承与多继承  
在Java中,只能有一个父类  
所有类的根类Object  
Java语言API中包含了一个名为Object的特殊类,他是整个Java类层次中的根类。Object类在java.lang包中,是每个Java类的父类,要么是直接的父类,要么就是间接父类。  
在Java中,当引用与一个字符串连接时,JVM将隐式地调用toString()方法。  
方法重写  
子类可以重写从父类继承的方法,从而允许子类添加或者改变父类中方法的行为,这称为方法重写,是OOP的特征之一。当子类重写父类的方法中,必须遵循如下的规则:  

1. 子类的方法的返回值的类型、方法名和形式参数列表,必须和父类是相同的;
2. 访问修饰符必须不小于父类中的访问修饰符;  
3. 子类中重写的异常不能抛出比父类更多的异常。    

如下面的代码:  
  
    public class Dog extends Pet{
        String name;
        public Dog(){
            super();
            System.out.println("我是子类构造函数");
        }
        @Override                // 方法重写关键字
        public void show(){     // 方法重写
            System.out.println("你好我是:"+name+",今年"+age+"岁了,"+colore+"色的!");
            System.out.println("`````````汪汪汪`````````\n");
        }
    }

equals()方法  
equals()方法比较两个对象,测试二者是否相等。比较运算符“==”用于检测是否两个引用指向同一对象。  

posted @ 2016-12-25 21:51  Mr.杨大宝  阅读(187)  评论(0编辑  收藏  举报