七日阅书4 理解面向对象《Java程序设计与计算思维》
Posted 小雨青年
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了七日阅书4 理解面向对象《Java程序设计与计算思维》相关的知识,希望对你有一定的参考价值。
一、前情提要
【七日阅书】1 计算思维和Java特性《Java程序设计与计算思维》
【七日阅书】2 Java的数据类型和流程控制《Java程序设计与计算思维》
【七日阅书】3 字符串、数组、集合、泛型《Java程序设计与计算思维》
二、面向对象
Java是最面向对象的语言,这么说问题也不大。
面向对象的三个特点
- 可读性
- 可重复使用型
- 扩展性
面向对象可以还原实物的特点,使用的抽象化工具分别是
- 属性:描述外观
- 方法:描述动态的响应方式
- 事件:对外部事物的响应和主动发出的事件
1.类 Class
最基本的理解,类是对象的原型,对象是类的实例。
2.一个成熟的类
为什么要说是一个成熟的类呢,因为如果你想弄明白类,就需要把类的元素理解并使用。
public class Cat //公共的类
public Cat() //构造函数
System.out.print("我是构造函数,实例化的时候自动调用\\r\\n");
name = "默认猫名字";
private int age = 1; //私有变量 默认值
public String name; //公开变量
public void setAge(int age)
this.age = age;
public void printAge()
System.out.print(age);
public String formatName() //公开方法
return "猫的名字是:"+ name; //返回值
调用方法分别打印了调用构造函数的时候name的值。
Cat tangguo = new Cat();
String catName1 = tangguo.formatName();
System.out.print(catName1);
System.out.print("\\r\\n");
tangguo.setAge(3); //私有变量通过方法赋值
tangguo.name = "糖果"; //公开变量可以直接赋值
String catName = tangguo.formatName();
System.out.print(catName);
System.out.print("\\r\\n");
tangguo.printAge();
运行结果如下,推荐本地跑下代码,顺便做下修改加深理解~
3.继承
继承的意义在于,作为派生类,在继承基类的基础上,对原有方法的重写,以及扩展出新的方法,达到自己的使用目的。
简单的继承类如下,已经加了注释,很容易理解。
/**
* 布偶猫是猫的子类,继承了猫类
*/
public class RagdollCat extends Cat
//重写了方法
public String formatName()
return "布偶猫的名字是:"+ name + "\\r\\n";
//子类扩展出了新的方法
public void say()
System.out.print("我是布偶猫\\r\\n");
RagdollCat ragdollCat = new RagdollCat();
ragdollCat.name = "小布";
ragdollCat.say();
String catName = ragdollCat.formatName();
System.out.print(catName);
System.out.print("\\r\\n");
4.多态
多态的可以理解为多种变形,同名的方法但是参数不同。
我们经常使用的打印就是非常典型的多态,在调用的过程中可以体会到非常便捷。
三、总结
面向对象是程序对于现实世界的实现,类比实际事物能让你快速理解面向对象。
但是真正的理解还需要不断写项目。
四、源码地址
以上是关于七日阅书4 理解面向对象《Java程序设计与计算思维》的主要内容,如果未能解决你的问题,请参考以下文章
七日阅书7 网络通信&全书总评《Java程序设计与计算思维》
七日阅书1 计算思维和Java特性《Java程序设计与计算思维》
七日阅书3 字符串数组集合泛型《Java程序设计与计算思维》