[toc]
一、面向对象的基本概述
基本概念
面向过程:
所谓面向过程:将要实现的功能描述为从一个开始到结束按部就班的连续步骤;依次逐步完成这些步骤,如果某一步难度较大,又可以将该步骤再次细化为若干子步骤,以此类推,一直到结束得到想要的结果;程序的主体是函数,一个函数就是封装起来的模块,可以实现一定的功能(某一动作),各个子步骤往往就是通过各个函数来完成的,从而实现代码的重用
面向对象:
所谓面向对象就是:在编程的时候尽可能去模拟真实的现实世界,按照现实世界中的逻辑处理问题,分析问题中参与的有哪些实体,这些实体应该有什么属性和方法,我们如何通过这些实体的属性和方法去解决问题。
实体是动作的支配者,没有实体就肯定没有动作发生。任何功能的实现都是依赖于一个具体的实体的"动作,操作,行动"。
面向对象可以看作是一个又一个的实体在发挥其各自“能力“并在内部进行协调有序的调用过程。分析过程为:
- 分析有哪些动作是由哪些实体发出 的
- 定义这些实体,为其增加相应的属性和功能
- 让实体去执行相应的功能和动作
类与对象的关系
类:用Java语言对现实生活中的事物进行描述。一般关注两个方面,属性,行为(动作,功能,函数);
只要明确该事物的属性和行为并定义在类中即可。(描述用)
对象:就是该类事物实实在在存在的个体。用new关键字来创建该类事物的对象(具体怎么描述的,是个实例)
注意:类中怎么没有定义主函数?
主函数是为了保证所在类的独立运行,是程序的入口,被jvm调用;主函数的存在,仅为该类是否需要独立运行,如果不需要,主函数不用定义的。
2. 封装
概念:隐藏对象的属性和实现细节,仅对外提供公共访问方式。
好处:
- 将变化隔离
- 便于使用
- 提高重用性
- 提高安全性
封装原则:
- 将不需要对外提供的内容都隐藏起来
- 吧属性都隐藏起来,提供公共方法对其访问
关键字 private:一个权限修饰符,用于修饰成员,使其私有化,私有内容只有本类有效。
public class Person {
private String name;
private int gender;
private int age;
public String getName() {
return name;
}
public String getGender() {
return gender == 0 ? "man" : "woman";
}
public void work() {
if (18 <= age && age <= 50) {
System.out.println(name + " is working very hard!");
} else {
System.out.println(name + " can't work any more!");
}
}
}
网友评论