java面向对象程序设计基础教程(java面向对象程序开发及实战)
本篇文章给大家谈谈
今天是小A注重代码开发开发的第一篇,以后也会陆续更新,请大家多多关注想获得老师指导和自学教程的同学,请联系直接留言或者加老师微信LNYK_lily或13006356038联系获取指导!今天讲解目录来了:。
面向对象思想: 面向过程(PO):一种较早的编程思想,顾名思义该思想是站在过程的角度思考问题,强调的就是功能行为,功能的执行过程,即先干啥,后干啥而每一个功能我们都使用函数(类似于方法)把这些步骤一步一步实现,使用的时候依次调用函数就可以了。
说人话:提倡和注重的:每一个功能都使用函数来完成,在使用某一个功能的时候,就挨着挨着调用函数即可. 学习过程中遇到什么问题或者想获取seoul是什么意思学习资源的话,欢迎加入部落官方Java学习交流群,点击链接加入群:java学习 我们一起学Java!
案例:设计购物、做饭、吃饭,洗碗、以及写代码的程序 面向过程最大的问题在于随着系统的膨胀,面向过程将无法应付,最终导致系统的崩溃为了解决这一种软件危机,我们提出面向对象思想 面向对象(OO):一种基于面向过程的新的编程思想,顾名思义该思想是站在对象的角度思考问题,我们把多个功能合理的放到不同对象里,强调的是具备某些功能的对象。
具备某种功能的实体,称为对象.
面向对象的优势和特点: --------------------------------------------------------seoul是什么意思- 面向对象更加符合我们常规的思维方式,稳定性好,可重用性强,易于开发大型软件产品,有良好的可维护性。
当然上述例子仅仅只是说明了面向对象的一个特征——封装除此之外面向对象还有两大特征,我们在具体讲解到的时候再做分析三大特征:封装(Encapsulation);继承(Inheritance);多态(Polymorphism);
封装是指将对象的实现细节隐藏起来,然后通过公共的方法来向外暴露该对象的功能 继承是面向对象实现软件复用的重要手段,当子类继承父类后,子类是一种特殊的父类,能直接或间接获得父类里的成员 多态是可以直接把子类对象赋给父类变量,但是运行时依然表现出子类的行为特征,这意seoul是什么意思味着同一类型的对象在运行时可能表现出不同的行为特征。
注意: 千万不要误解为面向对象一定就优于面向过程的设计. 面向对象是基于面向过程的,永远不可能取代面向过程. 对象和类的关系: 你在街上看到一个美女,就可以把这个美女看成一个对象,那么该对象有两方面的定义:状态和行为。
美女有状态,如身高,年龄,皮肤颜色等等;美女还有行为,如走路,说话,抛媚眼等等 作为基本定义,对象(object)可以定义成包含数据(状态)和行为的一个实体,对象也称为实例(instance) --------------------------------------------------------------seoul是什么意思---------------------------------------
对象: 对象是人们要进行研究任何事物,一切事物都可以认为是对象 对象具有状态和行为: 对象具有状态,比如姓名,年龄,性别等 对象还有行为,比如吃饭,睡觉,写代码等 -----------------------------------------------------------------------------------------------------。
类(类型): 具有相同特性(数据元素)和行为(功能)的多个对象的抽象就是类因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象,类seoul是什么意思实际上就是一种数据类型 类具有特性,对象的状态,用成员变量来描述。
类具有功能,对象的行为,用方法来描述 -----------------------------------------------------------------------------------------------------。
什么是类:类是对象的类型/模板创建一个对象,就是使用一个类作为构建该对象的基础 -----------------------------------------------------------------------------------------------------。
在seoul是什么意思编程的世界:是先有类,再有对象,对象是根据类创建出来的.
类的定义 案例:分析出对象和类,以及对象具备的状态和行为 --------------------------------------------------------------- 春哥,现年31岁,身高175cm,体重55kg,会跳舞,会唱歌;。
凤姐,现年30岁,身高145cm,体重48kg,会跳舞,会唱歌; --------------------------------------------------------------- 名词解析法:
名词:对象/对象的状态 动词:对象的功能/行为 ------------seoul是什么意思--------------------------------------------------- 人类: 状态:
名字 年龄 身高 体重 行为: 唱歌 跳舞 --------------------------------------------------------------- 在程序中,对象的状态使用成员变量表示,对象的行为使用方法表示..
类的定义: class 类名 { 0 ~ N个成员变量(字段(Field)); 0 ~ N个方法 } 注意: 1:若类使用public修饰,则当前所在的文件名必须和类名相同. 在以后的开发中,都是一个文件一个类seoul是什么意思,都建议使用public修饰.
2:类型必须符合标识符的命名规范(使用名词,首字母大写.).
对象基本操作:对象的创建和使用: 在程序中,必须先有类,再有对象(先得有模板,再有根据模板制造出来的个体). 1):创建对象 :类 对象名 = new 类名(); 2):对象调用方法:对象名.方法名([实参]);
3):对象操作字段 赋值: 对象名.变量 = 值; 取值: 变量 = 对象名.变量; 4):打印对象: 默认输出:Servant@659e0bfd,对象的类型@十六进制的hashCode, 和数组一样,看不到对象中的数据,期待我们讲解Object类.
5):比较对象: 每次new,seoul是什么意思都会在堆内存开辟新的内存空间. 而"==",在比较引用类型的时候,比较的是引用的内存地址值. 6):对象的生命周期. 从使用new在堆中开辟内存开始,到垃圾回收期回收之间.
垃圾:内存中的某一块空间没有被某一个变量所引用. 垃圾产生时,不一定运行GC,GC是自行调度,程序员控制不了. 7):匿名对象. 没有名字的对象,就是创建对象时,没有赋给一个变量. new Servant();创建一个匿名对象
只在堆中开辟内存空间,不会被栈中的变量所引用. 特点:匿名对象只能使用一次,就是刚刚创建的这一次. 对象的实例化过程:
构造器: 我们在创建Student对象,代码如下: Studeseoul是什么意思nt s1 = new Student(); 其实我们在创建对象的时候,都是调用构造方法,构造函数/构造器/构造子. --------------------------
构造器:主要用于创建对象并返回对象和初始化对象数据. -------------------------- 构造器的特点: 类都有一个默认构造器,当不显示的定义构造器的时候,编译器会在编译的时候,提供一个默认构造器.
1):构造器的名字必须和当前所在类的类名相同. 2):不需要定义返回值类型,更加不能使用void作为返回.构造器的目的在于创建和返回当前类的对象,即使要编写返回类型,也应该是当前类名,如:Studentseoul是什么意思 Student(){},既然和当前类名相同,就规定统统省略.
3):构造器中不需要使用return来返回当前构造的对象. ----------------------------- 1):无参数,无方法体. 2):构造器的访问修饰符和当前类的修饰符相同(是否有public).
3):一旦在类中显示地提供了构造器,则默认的构造器就不再提供了. 推论: 一个类至少有一个构造器(即使没有自定义,编译器也会创建一个默认的). -----------------------------------------
public class Student{ 默认的构造器 publiseoul是什么意思c Student(){} } --------------- class Student{ 默认的构造器 Student(){}
} ------------------------------------------------------- 方法的重载:在同一个类中,方法同名,但是参数列表不同. 解决了相同的功能方法,因为参数列表不同,而带来参数名不同的问题.
构造器重载: 不同类的构造器是不相同的. 对于构造器重载来说,肯定是在同一个类中,并且构造器都是和类名相同. 所以在同一个类中的多个构造器就必须参数列表不同(参数类型,参数个数,参数顺序). ----------seoul是什么意思---------------------------------------------
Student(){} Student(String name){} Student(String name,int age){} 上述的构造器就是重载关系. -------------------------------------------------------
static修饰符: 类是用来描述多个对象共同的状态和行为的,就拿人的姓名. 看右图,春哥和凤姐这个两个对象,都有拥有姓名,年龄身高和体重等状态,但是不同对象的状态值却不一样.此时发现,我们所描述的信息是针对于某一个具体对象的,seoul是什么意思对象不同,那么名字是可能不一样的.
--------------------------------------------------------------- 现在,我想描述一类事物的状态和行为,比如:人类,有总人数的状态,有毁灭的行为.
可能有人认为,毁灭是一个行为,那么可以在Person类中,定义一个方法(destory),若想毁灭人类,则调用该方法即可.但是新的问题又来了?到底谁来调用destory方法? 春哥.destory();
凤姐.destory(); 都不对的,因为他们只能表示自己,不能表示人类. -------------------------------------seoul是什么意思---------------------------
我们平时在类中定义的成员变量和方法,都是对象的状态和行为. 那如何表示,一类事物的状态和行为呢?不是某一个个体(对象)的. 此时,为了解决该问题,咱们得学习一个修饰符:static. -----------------------------------------------------------------
static可以修饰成员变量(字段),可以修饰方法等,就表明该字段或该方法属于类,而不属于某一个对象. ------------------------------------------------------------seoul是什么意思-----
类成员(static修饰成员)的特点: 1):随着类被加载进JVM而同时也最初始化和在内存中分配空间. 2):优先于对象存在.(对象是通过new出来的.) 3):被该类的所有对象所共享. 该状态/行为是整个人类的,那么每一个人都是拥有该状态/行为的.
4):直接使用类名调用即可. 人类毁灭: Person.destory(); 类成员和实例成员的访问: ------------------------------------------------
类 成员:使用static修饰的成员变量/方法,属于类,所以可以直接使用类名访问. 实例成员:没有使用static修饰的成员seoul是什么意思变量/方法,属于对象.必须使用对象来访问. ----------------------------------------------------------------------------------
访问规则: 1):静态方法只能访问静态的成员变量/方法,不能访问非静态的成员变量/方法(属于对象). 静态成员优先于对象存在. 2):非静态方法可以访问非静态成员变量/方法,也可以访问静态的成员变量/方法.
因为底层使用对象访问的. 3):对象可以访问静态成员,但是不推荐,因为底层依然使用类名在调用. 4):类可以访问静态成员,类不能访问非静态成员(成员变量/方法). ----seoul是什么意思-------------------------------------------------------------------------------
一般的,在开发中类成员如何使用: 一般的,在开发中工具类的工具方法都使用static修饰,如此的好处,直接使用工具类名.方法就可以调用,使用更加简单. 数组的工具类:java.util.Arrays中的工具方法.
一般的,若静态方法需要访问一个成员变量,此时才把成员变量使用static修饰. 学习大纲:
一郑州AAA教育一一起实现!有梦想,郑州AAA教育微信号:AAA_edu名 称:郑州AAA数字艺术教育地 点:高新区莲花街seoul是什么意思银杏路总部企业基地112号电 话:0371-68585500UI 群
:372815340或286973371官 网:htpp://www.aaajiaoyu.cn赞是一种鼓励 | 分享传递友谊