黑马程序员技术交流社区
标题:
【一个程序系列】 一个程序了解封装,继承和多态
[打印本页]
作者:
xlunaer
时间:
2015-4-14 11:10
标题:
【一个程序系列】 一个程序了解封装,继承和多态
package one;
/**
* 一个程序了解封装,继承和多态
*
* @author Alan
*
*/
// 定义父类
class Super {
/**
* 这里介绍封装:
* 封装体现在两个方面: 1, 数据和操作分离;2,私有成员和公有成员分离
*/
public int field1;
private int filed2;
public void method1(int x) {
System.out.println("父类打印的" + x);
}
private void method2() {
}
}
class Sub extends Super {
/**
* 这里介绍继承:
* java通过extends关键字表示继承。继承的知识点:
* 1,子类不继承父类的私有成员,所以Sub不能继承field2和method2
* 2,java不支持多继承,一个子类只有一个父类
* 3,java支持多重继承,比如A继承B,B继承C,C继承D是可以的
*/
int filed3;
public void method3() {
System.out.println("子类的方法");
}
/**
*
* 子类可以重写父类的方法,但需要两个条件:
* 1,子类复写的方法的返回类型,方法名和参数都必须和父类相同,仅方法体可以不同
* 2,子类复写的方法不能比父类的方法拥有更小的访问权限。以满足父类出现的地方,子类也适用。
*/
public void method1(int x) {
System.out.println("子类打印的" + x);
}
}
public class Domo1 {
public static void main(String[] args) {
/**
* 这里介绍多态:
* 多态:指父类引用指向子类对象。这样任何一个子类对象都可以当作父类来使用。但是此时,
* 该对象只有继承自父类的字段和方法被访问,子类独自享有的字段和方法被隐藏。
* 多态发生的条件: 1,必须有继承; 2,必须有父类引用指向子类对象
* 子类重写父类的方法,则引用时使用子类重写过的方法。
*/
Super s = new Sub();
s.method1(4); //调用子类重写过的method1方法
}
}
复制代码
作者:
蜡笔
时间:
2015-4-14 13:00
很全面!
作者:
静心明德
时间:
2015-4-14 13:59
知识学习的挺清晰明白的
作者:
silencer
时间:
2015-4-14 14:05
飞过。。。
作者:
xlunaer
时间:
2015-4-14 14:11
蜡笔 发表于 2015-4-14 13:00
很全面!
谢谢支持,后面会分享更多,一起努力加油!
作者:
xlunaer
时间:
2015-4-14 14:22
静心明德 发表于 2015-4-14 13:59
知识学习的挺清晰明白的
谢谢支持
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2