Java子类继承父类
2015-08-07 15:57
477 查看
1.子类继承了父类,就继承了父类的方法和属性。
2.在子类中,可以使用父类中“public”、“protected”和“缺省”(缺省时,.java文件必须要在同一个包内)定义的方法和属性,也可以创建新的数据和方法;没有访问“private”定义的方法和属性的权限。
protected的使用方式:
3.在Java 中,继承的关键字用的是“extends”,即子类不是父类的子集,而是对父类的“扩展”。
4.一个子类只能有一个父类,然而,一个父类可以有多个子类。
5.重写继承的方法的相关问题:
2.在子类中,可以使用父类中“public”、“protected”和“缺省”(缺省时,.java文件必须要在同一个包内)定义的方法和属性,也可以创建新的数据和方法;没有访问“private”定义的方法和属性的权限。
protected的使用方式:
/** * Person.java */ package com.iting.testProtect.vo; public class Person { protected String name; protected int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
/** * Student.java */ package com.iting.testProtect.vo; public class Student extends Person { private String school; public String getSchool() { return school; } public void setSchool(String school) { this.school = school; } public Student(String name , int age , String school) { this.name = name; this.age = age; this.school = school; } @Override public String toString() { return "Student [school=" + school + ", name=" + name + ", age=" + age + ", getSchool()=" + getSchool() + ", getName()=" + getName() + ", getAge()=" + getAge() + ", getClass()=" + getClass() + ", hashCode()=" + hashCode() + ", toString()=" + super.toString() + "]"; } }
/** * Main.java */ package com.iting.testProtect.main; import com.iting.testProtect.vo.Student; public class Main { public static void main(String[] args) { Student student = new Student("阿呆",18,"集美大学"); System.out.println(student.toString()); } }
3.在Java 中,继承的关键字用的是“extends”,即子类不是父类的子集,而是对父类的“扩展”。
4.一个子类只能有一个父类,然而,一个父类可以有多个子类。
5.重写继承的方法的相关问题:
/** * Person.java */ package com.iting.testProtect.vo; public class Person { private void working() { System.out.println("上班"); } protected void eat() { System.out.println("吃白米饭"); } public void walking() { System.out.println("随便走"); } }
/** * Student.java */ package com.iting.testProtect.vo; public class Student extends Person { /*这不是重写,Student并没有获得Person的working()方法的权限*/ public void working() { System.out.println("上学"); } /*这是重写,子类方法的权限必须 >= 所重写的父类方法的权限*/ public void eat() { System.out.println("喝粥"); } /*非法,子类中的walking()方法的访问权限private比被覆盖方法的访问权限public弱*/ private void walking() { System.out.println("蹦蹦跳跳"); } }
相关文章推荐
- JAVA代理机制中过的CGLIB代理自己关于的一点小小的理解
- javabeanUtil泛型操作类
- java配置文件properties
- java中的==和equals
- myeclipse2014集成SVN
- Java学习笔记-------使用JScrollPane 不显示滚动条的原因:
- eclipse的安卓开发插件『ADT』在线安装不成功的解决方案
- java基础---枚举(enum)
- Java构造和解析Json数据的两种方法
- Mac版的Android Eclipse识别安卓真机
- java 代码中如何预防空指针异常
- java基础--集合
- java.lang.OutOfMemoryError: PermGen space的解决方法
- Java实现查找树(BST,AVL,BTree,Trie)
- MyEclipse 10.7汉化教程
- Struts2中action访问路径配置
- ADT+SDK+JDK+elipse的理解
- JavaWeb学习——Ajax提交URL中文参数乱码问题
- java中的toString方法
- 基本JNI调用技术(c/c 与java互调