【Java基础笔记】面向对象基础
2017-03-05 19:48
435 查看
面向对象三要素:封装,继承,多态。
封装
原则:将不需要对外提供的成员变量隐藏起来,把属性都表示为私有的,提供其公共的方法对其访问
意义:明确标识出允许外部使用的所有成员函数和数据项,或者叫接口。
继承
继承基类(父类)的方法,并做出扩展。
声明某个子类兼容于某基类(或者说,接口上完全兼容于基类),外部调用者可无需关注其差别(内部机制会自动把请求派发到合适的逻辑)。
多态
基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。很显然,多态实际上是依附于继承的第二种含义的。借助多态原理,可以实现控制反转(spring框架核心),减轻程序耦合度。
资料来源
封装
原则:将不需要对外提供的成员变量隐藏起来,把属性都表示为私有的,提供其公共的方法对其访问
意义:明确标识出允许外部使用的所有成员函数和数据项,或者叫接口。
public class Student { private String name,sex; //成员变量为私有,外部只能通过set设置,get方法访问。 public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public static void main(String[] args) { Student student = new Student(); student.setName("小明"); } }
继承
继承基类(父类)的方法,并做出扩展。
声明某个子类兼容于某基类(或者说,接口上完全兼容于基类),外部调用者可无需关注其差别(内部机制会自动把请求派发到合适的逻辑)。
class Person{ private String name,sex, age; public void read(){ System.out.println("读书使我快乐!"); } public void write(){ System.out.println("写字使我快乐!"); } } public class Student extends Person{ //Student类(子类)继承Person类(父类),java不支持多继承 private String name,sex; public void read(){ super.read(); //调用父类方法 System.out.println("读书真痛苦!"); //父类方法上进行扩充 } public static void main(String[] args) { Student student = new Student(); //输出:写字使我快乐! student.write(); //输出: //读书使我快乐! //读书真痛苦! student.read(); } }
多态
基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。很显然,多态实际上是依附于继承的第二种含义的。借助多态原理,可以实现控制反转(spring框架核心),减轻程序耦合度。
public interface Person{ public void read(); } public class Student implements Person{ public void read(){ //Student-code } } public class Teacher implements Person{ public void read() { //Teacher-code自己实现方法 } }
资料来源
相关文章推荐
- JAVA面向对象中的基础知识整理-JAVA课堂笔记
- 学习笔记3—Java基础3_面向对象上a
- 黑马程序员__java基础面向对象笔记
- 黑马程序员_java面向对象基础学习笔记
- Java基础笔记之面向对象基础
- [java学习笔记]java语言核心----面向对象基础
- 黑马程序员_java基础笔记(03)...面向对象
- JAVA面向对象基础 对象 类 方法学习笔记
- JAVA学习笔记01 -- 面向对象基础
- Java基础笔记(截止到面向对象思想)
- 【JAVA学习笔记】面向对象基础
- 传智播客_张孝祥_Java基础4_面向对象下_学习笔记
- java面向对象基础(笔记)
- java学习笔记1——面向对象和JVM基础
- 学习笔记4—Java基础3_面向对象上b
- [2013-11-28]JAVA笔记_面向对象基础、方法重载
- 黑马程序员_java基础笔记(03)...面向对象
- JAVA笔记四(12-15 面向对象基础)
- JAVA面向对象基础 对象 类 方法学习笔记
- (java基础)java面向对象部分笔记