1.组合语法:将对象引用置于新类中。初始化方法:①定义对象是初始化。②在类的构造器中初始化。③实例初始化。④在使用对象前初始化。
2.继承语法:继承是所有面向对象不可缺少的组成部分。当创建一个类,总是在继承,都继承于object。重载:方法名相同,参数列表不同,访问修饰符和返回值类型可以相同也可以不同。重写:方法名相同,返回值类型相同,参数列表相同,访问权限不能比父类中被重写的方法的访问权限低,构造方法不能被重写。super用来访问父类中被子类覆盖的方法或属性。
重载示例:
public static void main(String[] args) { System.out.println(add(1, 2)); System.out.println(add(1, 2, 3)); System.out.println(add(1.1, 2)); System.out.println(add(1, 2.2)); } public static int add(int x, int y) { int sum = x + y; return sum; } public static int add(int x, int y, int z) { int sum = x + y + z; return sum; } public static double add(double x, int y) { double sum = x + y; return sum; } public static double add(int x, double y) { double sum = x + y; return sum; }
重写示例:
public static void main(String[] args) { Dog d = new Dog(); d.eat(); } } class Animal { public void eat() { System.out.println("吃"); } public void sleep() { System.out.println("睡觉"); } } class Dog extends Animal { public void eat() { System.out.println("吃。。。"); } }
super示例:
public static void main(String[] args) { Animal01 a = new Cat(); a.move(); } } class Animal01 { public void move() { System.out.println("动物可以移动"); } } class Cat extends Animal01 { public void move() { super.move(); System.out.println("猫可以移动"); } }
3.初始化基类:在构造器中调用基类构造器来执行初始化。构造器的方法名必须和类名一致;如果没有定义构造器,编译器会自动定义一个无参构造器,已定义构造器则编译器不会自动添加;通过new关键字调用;构造器有返回值,但不能定义返回值类型。
public static void main(String[] args) { Student s = new Student(); s.name = "小明"; s.age = 18; System.out.println("名字:" + s.name); System.out.println("年龄:" + s.age); } } class Student { String name; int age; public Student() { System.out.println("无参构造器"); } }