JAVA学习笔记(6)— 初次接触面向对象:基本的概念
2021/4/16 12:29:16
本文主要是介绍JAVA学习笔记(6)— 初次接触面向对象:基本的概念,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
本篇适合读者:对面向过程有一定基础的JAVA初学者
往期笔记:
JAVA笔记合集(一)— JAVASE基础合集
马上要面向对象啦!同学们是不是特别鸡动~咱程序员的幸福之一就是,对象真多,要多少有多少;老婆就是咱计算机,每天对着她啪啪啪…写代码;
面向对象编程,幸福每一天…
下面我们开始!
1.面向对象的基本概念
(1)面向对象是什么?
面向对象是一种编程思想,基于面向过程。我们在学习、使用面向对象编程时,关注的重点在于结果。全称为:Object Oriented Programming ,简称OOP。现在流行的大多数编程语言,都支持面向对象。所以说,面向对象不仅是一种流行的编程思想,而且是当代程序员的一种生活方式。
(2)面向对象的三大特点:
封装:顾名思义,封装就像现实中的包装一样,把一些东西封装、嵌合在一起,形成一个新产品,集成功能;基本单位为类;
继承:类似于现实中的继承,”小明继承了他爸爸的亿万家产“,同理,程序之间也可以有类似的继承关系存在;
多态:差不多是多种状态的意思,提高代码的利用率、重用率。
2.类与对象
(1)类
我们之前的笔记已经无意识地写了很多类了,即很多class。类是JAVA的基本单位。可以理解为一个类指一类事物的抽象
(2)对象
既然可以将类理解为一类事物的抽象,那么对象可以理解为对象是一类事物的具体实现。
举个例子:
我们定义一个类,是一件事物的抽象,我们举个事物例子:猫
那么我们可以这样抽象:毛色、品种、性别…
那么对应的猫对象,就应该是某个具体实现:灰色、家猫、公的…
差不多就是这个意思。
3.类与对象的创建与使用
(1)类的创建
(a)方式一,内部类,这种创建方式很少用,我们就举一个例子了解一下即可。
所谓内部类,就是在我们main方法所在的那个类里面再创建一个类,而且不能用Public修饰:
public class Test_Class { /** * rules: * 1.only one class could be 修饰 by public in one class file * * 2.public class is the name of file * * 3.auto create public class in Eclipse * * 4.in one java file could exist many classes,but only one public class * * 5.normally, only one class be used in daily development; */ public static void main(String[] args) { // TODO Auto-generated method stub //Using class to test: //Create object: Phone p = new Phone(); p.call(); } } //for example: //注意:另外的类一定要写在主类后面,如果用这种方法的话; class Phone { //类的成员变量、属性: String color; String size; String model; double prize; //类的方法: public void call() { System.out.println("Calling"); } }
(2)方式二:外部类,即再包内再重新定义一个类,这种方式是常用的方式,读者的重点应该放在这个例子。
// This class in order to 定义一个外部类来举例子 public class Car { String Name; int Num; double Price; //Basic 属性 public void SetPrice(double price ) { this.Price = price; } }
(2)对象的创建和使用
我们拿一个古老的例子来说明一下:
4.思考与总结
初次接触面向对象,难免会觉得抽象。抽象,难,枯燥。But, 这才有挑战性!毕竟,作为资深宅男程序员,咱的对象都没有生命体征,除了对它啪啪啪一通乱操作,并不能和她进行甜甜蜜蜜亲亲搂搂的恋爱。那还能咋办?唯有多练习,多钻研,多看咱Sharry的笔记,就算它男上加男,咱也要迎男而上!
这篇关于JAVA学习笔记(6)— 初次接触面向对象:基本的概念的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?