JAVA面向对象思想理解分析

1.面向对象是面向过程而言.两者都是一种思想。
面向过程:强调的是功能行为。(强调过程、动作)
面向对象:将功能封装进对象,强调了具备了功能的对象。(强调对象、事物)
面向对象是基于面向过程的。将复杂的事情变简单了。
面向过程-->面向对象:执行者-->指挥者
将过程、功能封装进对象里面。
面向对象三大特征:封装、继承、多态。(找对象,建立对象,使用对象,维护对象的关系。)
老者境界:(万物皆对象!!!)
例:公司招聘程序员:为了提高效率,公司老板从面向过程到面向对象(执行者-->指挥者)
例:去饭店吃饭,服务员具备点菜功能是对象,我们是指挥者。
2.以后写程序就是找对象使用,有对象就拿过来用,没对象就造一个对象。
人开门:名词提炼法
人{
开门(门)
{
门.开();
}
}
门{ 
开(){操作门轴..}
}
3.类(class)和对象的关系:类是对现实生活中事物的描述。对象就是这类事物,实实在在存在的个体。
描述事物就是描述事物的属性和行为。
属性对应类中的变量,行为对应类中的函数(方法)。
定义类是描述事物定义属性和行为。【属性】和【行为】共同成为类中的成员(成员变量和成员方法);
(现实生活中对象:张三、李四。
想要描述:这些对象共性内容。对具体的抽象。
描述时:这些对象的共性有:姓名,年龄,性别,学习java时间、功能。)
映射到java中:描述是class中定义的类。具体对象是对应java在堆内存用new建立的实体。
4.类类型变量(引用类型)指向对象。(栈内存产生类类型变量指向实体)(堆内存产生实体)
5.成员变量作用于整个类中class,局部变量作用在函数中。
成员变量作用堆内存中因为对象的存在才在内存中存在;局部变量作用于栈内存中。
6.匿名对象:new Car().num=5;匿名对象调用属性没意义。调用方法有意义。(方法在方法去中)
当对对象的方法只调用一次时,可以使用匿名对象,这样比较简化;
如果对一个对象进行多成员调用,必须给这个对象起名字。
可以将匿名对象作为实际参数进行传递。
例如:show(new car());public static void show(car c){c.num=3;c.color=4;}可以简化书写;
7.封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问的方式。
好处:将变化隔离;便于使用;提高重要性;提高安全性。
封装原则:将不需要对外提供的内容都隐藏起来;
【把属性都隐藏,提供公共方法对其访问】。
【函数是代码中最小封装体。】.
对属性的封装,提供get、set方法访问,赋值
private只在私有类中访问。封装不是私有,私有仅仅是封装的一种表现形式。之所以对外提供访问方式,因为在访问方式中加入逻辑判断等语句。
一个类里面有属性set(void)设置和get返回,那么这个属性是私有的。
8.构造函数:函数名和类名一致;不用定义返回值类型(不用void...);不写return语句。
对象一建立调用与之对应的构造函数。
构造函数的作用:可以给对象进行初始化。
构造函数的细节:当一个类中没有定义构造函数时,那么系统会默认给该类加入一个空参数的构造函数。
构造函数和一般函数写法上、运行上不同,构造函数是在对象一建立就运行。给对象初始化。
而一般方法(set get)是对象调用才执行,是给对象添加对象具备的功能。
一个函数一建立,构造函数只运行一次。而一般方法可以被该函数对象调用多次。
9.构造代码块,作用:给对象初始化,对象一建立就运行,优先于构造函数执行。构造代码块给所有对象初始化,
构造函数给对应对象初始化。
不同的构造函数有相同初始化内容。
10.局部的变量赋予给成员的用this关键字。(同名)
this的特点:this代表本类【对象】。this代表所在函数所属对象的引用。
哪个对象在调用this所在函数,this就代表那个对象。
this应用:当定义本类中功能,该函数内部调用该函数对象,用this表示这个对象。
11.构造函数之间的调用用this();用于区分同名变量的情况。
this语句只能在构造函数第一行。
12.static关键字。是一个修饰符,用于修饰成员(成员变量,成员函数)(在方法区中)
不在堆内存中,对象可以共享。
可以被类名调用。(类名.静态成员)。
static静态的特点:
1.随着类的加载而加载。2.被所用对象共享。3.优先于对象存在。4.可以被类名调用。5.静态变量可以使用get、set方法
特有的数据用成员变量,多个对象共用的数据用静态变量。
13.实例变量和类变量(static)区别
1.类变量随着类的加载存在于方法区中。实例变量随着对象建立存在堆内存中。
2.类变量生命周期长,随着类消失而消失。实例变量随着对象的消失而消失。
3.主函数是静态的。
14.静态使用注意事项:
1.静态方法只能访问静态成员(属性,方法)。非静态方法既可以访问静态也可以访问非静态。
2.静态方法中不可以定义this.super关键字。(静态优先于对象存在,对象中有this.)

标签: java面向对象

原文地址:https://www.cnblogs.com/reeber/p/Reeber.html

时间: 2024-11-06 19:36:06

JAVA面向对象思想理解分析的相关文章

对java面向对象的理解

前言: 在写博客前我们应该有个好的定位,可以是对知识的梳理和理解,可以是一种新技术,可以是对难点易错的解析和理解. 正文: java面向对象的理解.面向说的通俗点就是针对,对象就是有实际意义的事物(万物皆对象)其实也就是java中的一个参数,但这个参数实际代表了某个东西(比如你有个类Tourism,这个类对 属性姓名.年龄.当Tourism tou = new Tourism(),这个tou参数就实际代表了一个类Tourism的有意义对象,而某一个方法tourism(Tourism tou)那么

Java面向对象的理解和实现代码

理解Java面向对象的重要知识点: 一. 类,对象 类?首先举一个例子:小李设计了一张汽车设计图,然后交给生产车间来生产汽车,有黑色的.红色的.白色的... 这里,汽车设计图就是我们说的类(class),生产车间就是new构造器(大部分对象都是new出来的),生产出来的汽车就是我们要说的对象.可以说java编程实质就是构建类的过程. 对象?万物皆对象,宇宙中,如植物,动物,人类,每个个体都是各司其职.各尽所能的.这就要求对象高内聚.低耦合(简单理解就是人的大脑,它负责思考,想象,记忆,而不能呼吸

Java - 面向对象思想进行JDBC编程

mysql-connector-java-5.1.7-bin.jar jdbc.properties driver=com.mysql.jdbc.Driver jdbcUrl=jdbc\:mysql\://localhost\:3306/lesson user=root password= JDBCTools.java package 面向对象思想进行JDBC编程; import java.io.IOException; import java.io.InputStream; import ja

Java面向对象思想

Java的核心思想,面向对象思想. Java面向对象的最高境界,万物皆对象. 对象:现实中随处可见的事物都可以叫对象,对象就是实体的事物,人.小鸟.桌子.大树.楼房等等.对象又有自己的属性行为,属性行为又分为动态行为和静态行为.人的年龄姓名性别身高等属性是静态的,人可以唱歌,游泳,哭泣等行为是动态的. 对象在系统中是用来描述客观事物的一个实体,它是构成系统的一个基本单位.它也是由一些基本属性和对这些属性进行操作的一些方法来构成. 类是对对象属性和行为(方法)的载体,具有相同属性和行为(方法)的实

Java面向对象概要理解(1)

一.面向对象的基本思想 首先呢,学java的人都知道,Java是一种纯面向对象的编程语言,那么,什么是面向对象呢? 面向对象在现实生活中可以把任何一个存在的事物都可以称为对象,而每个对象又有自己对应的层级,属性和行为.比如人属于哺乳动物再往上对应的层级就是动物,这就是所谓的层级.人有什么就是属性,比如头发,鼻子,耳朵等等,行为就是能干什么,比如走,跑等等.那么在java中就从现实中提取客观存在的事物去构建出一个系统模拟现实,那么一个个的对象就构成了整个系统的架构.每个对象都会有自己对应的层级,属

Java面向对象的理解

Java是一门面向对象的编程语言(Object Oriented Programming,OOP), 这个句话是每个学习Java的程序员应该先深刻理解的一句话. 我们之所以将自自然界分解,组织成各种概念,并按其含义分类,主要是因为我们是整个口语交流社会共同遵守的协定的参与者,这个协定以语言的形式固定下来--除非赞成这个协定中的规定的有关语言信息的组织和分类,否则我们根本无法交谈. --Benjamin Lee Whorf(1897~1941) 在计算机编程中,也是对编程进行分解,组成各种概念,并

java面向对象思想2

1.主函数是一类特殊的函数,作为程序入口,可被虚拟机调用.主函数格式是固定的.public:函数访问权限最大.static:代表函数随着类的加载已经存在.void:主函数没有具体返回值.main:不是关键字,是一个特殊的单词,可被虚拟机识别.(String[] arr):函数的参数,字符串元素的数组.arr可以改变.虚拟机在调用主函数时,传入的是new String[0];没有元素.调用为:类.方法名():3.什么时候使用静态?静态随着类的加载而加载.使用静态变量:对象中有共享数据时.该数据被静

java面向对象思想1

1.面向对象是面向过程而言.两者都是一种思想.面向过程:强调的是功能行为.(强调过程.动作)面向对象:将功能封装进对象,强调了具备了功能的对象.(强调对象.事物)面向对象是基于面向过程的.将复杂的事情变简单了.面向过程-->面向对象:执行者-->指挥者将过程.功能封装进对象里面.面向对象三大特征:封装.继承.多态.(找对象,建立对象,使用对象,维护对象的关系.)老者境界:(万物皆对象!!!)例:公司招聘程序员:为了提高效率,公司老板从面向过程到面向对象(执行者-->指挥者)例:去饭店吃饭

Java面向对象思想解决猜拳问题

第一个面向对象的程序: 一个控制台猜拳小游戏: 第一步选择角色: 第二部选择剪刀,石头,布,与电脑进行PK: 第三部选择继续或者选择结束; 结束显示比赛的局数,以及各自赢得的分数: 设计思路 分析问题,设计出四个类 1.设计Person,Computer,Game三个类: 2.设计Test类启动程序: 测试运行: -----------欢迎进入游戏世界----------- ****************** ******猜拳开始***** ****************** -------