继承中的注意事项
来源:互联网 发布:男博导女博士知乎 编辑:程序博客网 时间:2024/06/06 03:36
package org.westos_01_继承;
/*
* 继承中的注意事项:
* 1)子类是将父类中的所有东西都会继承过来;(父类中私有的成员方法或者成员变量可以继承过来,但是不能直接访问或者直接使用,私有的只能在
* 本类访问!)
* 2)不要为了部分功能而使用继承
* 3)子类不能继承父类的构造方法,但是可以通过一个关键字:super(马上将)
*
* 什么情况下使用继承?
* class A{
* public void show(){}
* public void show2(){}
* }
*
* class B{
* public void show2(){}
* public void show3(){}
* }
*
* 通过观察:B类和A类中都有一个方法:show2(){}
*
* class B extends A{
* public void show3(){}
* }
*
* 虽然用继承可以实现,但是B类继承A类,在拿到show2()方法的同时,将show()方法也继承过来了,
* show()方法可能不是我想要的!这种情况:不要见到两个类中有共有的方法就使用继承
*
* 继承体现的是一种:is a 的关系: 如果A类是B类的一种或者是B类是A类的一种,那么就可以使用继承的思想
* 水果:
* 苹果
* 香蕉
* 桃子
* 人类:
* 学生
* 老师
* 工人
* 医生
*
* java开发的原则:
* 低耦合,高内聚
* 耦合:类与类之间关系
* 内聚:某一个类里面执行某一件事的能力!
* */
class Fu{
//成员变量
public int num = 20 ;
private int num2 = 50 ;
public void show(){
System.out.println(num);
System.out.println(num2);
}
//私有的成员方法
private void method(){
System.out.println("method Fu");
}
public void function(){
method() ;
}
}
//子类
class Zi extends Fu{
}
//测试类
public class ExtendsDemo3 {
public static void main(String[] args) {
//创建子类对象
Zi z = new Zi() ;
System.out.println(z.num);
// System.out.println(z.num2);
z.show() ;
// z.method() ;
z.function() ;
}
/*
* 继承中的注意事项:
* 1)子类是将父类中的所有东西都会继承过来;(父类中私有的成员方法或者成员变量可以继承过来,但是不能直接访问或者直接使用,私有的只能在
* 本类访问!)
* 2)不要为了部分功能而使用继承
* 3)子类不能继承父类的构造方法,但是可以通过一个关键字:super(马上将)
*
* 什么情况下使用继承?
* class A{
* public void show(){}
* public void show2(){}
* }
*
* class B{
* public void show2(){}
* public void show3(){}
* }
*
* 通过观察:B类和A类中都有一个方法:show2(){}
*
* class B extends A{
* public void show3(){}
* }
*
* 虽然用继承可以实现,但是B类继承A类,在拿到show2()方法的同时,将show()方法也继承过来了,
* show()方法可能不是我想要的!这种情况:不要见到两个类中有共有的方法就使用继承
*
* 继承体现的是一种:is a 的关系: 如果A类是B类的一种或者是B类是A类的一种,那么就可以使用继承的思想
* 水果:
* 苹果
* 香蕉
* 桃子
* 人类:
* 学生
* 老师
* 工人
* 医生
*
* java开发的原则:
* 低耦合,高内聚
* 耦合:类与类之间关系
* 内聚:某一个类里面执行某一件事的能力!
* */
class Fu{
//成员变量
public int num = 20 ;
private int num2 = 50 ;
public void show(){
System.out.println(num);
System.out.println(num2);
}
//私有的成员方法
private void method(){
System.out.println("method Fu");
}
public void function(){
method() ;
}
}
//子类
class Zi extends Fu{
}
//测试类
public class ExtendsDemo3 {
public static void main(String[] args) {
//创建子类对象
Zi z = new Zi() ;
System.out.println(z.num);
// System.out.println(z.num2);
z.show() ;
// z.method() ;
z.function() ;
}
}
/*
* 类:
* 成员变量:
* 成员方法:
* 构造方法
*
* 在继承中成员变量的关系:
* 1)当父类中的成员变量名称和子类中的成员变量名称不一致的情况下:很简单,分别输出就可以!
* 2)当父类中的成员变量名称和子类中的成员变量名称一致的情况下:
* a:现在子类 中的局部位置有没有该名称的一个变量,如果有就输出;
* b:如果在子类的局部位置没有找到,就到子类的成员位置找,有就输出;
* c:如果在子类的成员位置没有找到,就到父类的成员位置中找
* d:如果父类的成员位置找不到,就报错了
* */
阅读全文
0 0
- 继承中的注意事项
- 继承中的复制控制注意事项
- 组件编写中的属性继承注意事项
- java继承中的几点注意事项
- java继承中的几点注意事项
- [转]java继承中的几点注意事项
- 继承中的方法重写的注意事项
- java中继承注意事项
- Java中继承注意事项
- 使用继承需要注意事项
- OC 类继承注意事项
- 继承的相关注意事项
- 继承的注意事项
- 继承的注意事项
- 继承的注意事项
- Spring中Bean继承注意事项
- C++中继承的注意事项
- 接口多重继承及注意事项
- BZOJ2330: [SCOI2011]糖果
- SVN:多版本库环境的搭建
- 大数据工程师必备技能图谱
- 科研养猪说
- 求解方程根的近似解:牛顿法
- 继承中的注意事项
- python爬虫入门(7) pyspider学习1
- JZOJ 5432. 【NOIP2017提高A组集训10.28】三元组
- c++基础之类的继承
- 为什么要用到泛型类、泛型方法
- Java泛型之Type体系
- 用JavaSE知识点完成登入注册界面
- 【安全】10分钟理解Capability本质
- 排序算法之简单插入排序