【JAVA SE基础篇】面向对象编程

在这里插入图片描述

✨如果喜欢的话,欢迎大家关注,点赞,评论,收藏!😁
🌟本人博客的首页:crisp制药
😺本人是一个JAVA初学者,分享一下自己的所学,如果有错误,希望大家能告知,谢谢!

🌸面向对象概念的引入

在学习的C语言的基础语法之后,学习java首先了解到的就是,java与C语言不同,java是一种面向对象的语言,而c语言则是面向过程的一种语言,那么可能就有小伙伴就会疑问了,什么是面向对象,什么是面向过程呢?

面向过程(POP) :强调的是功能行为,以函数为最小单位,考虑怎么做。

面向对象(OOP):强调具备功能的对象,以类/对象为最小单位,考虑谁来做

对于一些规模较小的问题,将其分解为过程的开发方式比较理想,面向对象更加适合解决规模较大的问题,要想实现一个简单的Web浏览器可能需要大约2000个过程,这些过程可能需要对一组全局数据进行操作,采用面向对象的设计风格,可能只需要大约100个类,每个类平均包含20个方法。后者更容易找bug,毕竟在20个方法里找bug可比2000个过程中找简单太多了。
刚刚说的这些可以画一个图来总结:
在这里插入图片描述

🌼二 对象,类,方法与属性

从刚刚我们了解到面向对象和面向过程的差别,那么什么是对象呢?
这可不是我们平常说的谈恋爱的那个对象哈,在java的世界里,对象是指实际存在的该类事物的每个个体,因而也称为实例,而面向对象程序设计的重点是类的设计,设计类就是设计类的成员,那么什么是类呢,类是构造对象的模板或蓝图,我们可以将类想象为烘焙面包的模具,将对象想象为烘焙出来的面包。由类构造对象的过程称为创建类的实例。
在类中有两个重要的结构 —— 属性和方法,属性就是成员变量,
** 方法就是函数,如果想要重复一段或者多段代码块的使用,可以将这些代码封装成一个方法,方法具体表现为某种行为,创建类的对象,就是类的实例化。**
那么具体如何创建类的对象的方法呢?

方法的声明
访问权限符 返回值  方法名(参数列表){
	方法体
}
例如:
public void method(){
	System.out.println(Hello World!);
}
/*返回值类型:有返回值 vs 没有返回值 
如果方法有返回值,则必须在方法声明时,指定返回值的类型,
且必须使用return 返回,如果没有返回值则用void来表示,
如果使用return的话就表示该方法结束
*/

//方法的调用
Person p1 =new Person();//首先创建一个Person类的对象
//假设Person类有sleep,eat等方法,则可以调用
p1.eat();
p1.sleep();


💒访问权限符

Java规定的4种权限(从小到大排序):private,default (缺省:就没有权限修饰符),protected,public
在这里插入图片描述

🐰(1)public
(1)定义:public是公共的,被public所修饰的成员可以在任何类中都能被访问到。 (2)作用域:public能用来修饰类,在一个java源文件中只能有一个类被声明为public,而且一旦有一个类为public,那这个java源文件的文件名就必须要和这个被public所修饰的类的类名相同,否则编译不能通过。public用来修饰类中成员(变量和方法),被public所修饰的成员可以在任何类中都能被访问到。通过操作该类的对象能随意访问public成员。public在类的继承上的体现,被public所修饰的成员能被所有的子类继承下来。
🏄(2)default
default表示包访问权限。如果一个类里的一个成员(包括成员变量、方法、构造器等)或者一个外部类不使用任何访问控制符修饰,就称它是包访问权限的,default访问控制的成员或外部类可以被相同包下的其他类访问。
🏃 (3).protected
protected表示子类访问权限。如果一个成员(包括成员变量、方法、构造器等)使用protected访问控制符进行修饰,那么这个成员既可以被同一个包中的其他类访问,也可以被不同包中的子类访问。在通常情况下,如果使用protected来修饰一个方法,通常是希望其他子类来重写这个方法。
🏆 (4).private
private表示当前类访问权限。如果类里的一个成员(包括成员变量、方法、构造器等)使用private访问控制符来修饰,则这个成员只能在当前类的内部被访问。这个访问控制符用于修饰成员变量最合适,使用它来修饰成员变量就可以把成员变量隐藏在该类的内部。
🏠注意:

四种权限都可以用来修饰类的内部结构:属性,方法,构造器,内部类, 而对于class的权限修饰只可以用public和default,public类可以在任意地方被访问,default类只可以被同一个包内部的类访问

🐧方法的命名方法:

方法的名称,避免使用到java关键字,并且首字母小写,命名时使用驼峰命名法,又称驼峰式命名法,是电脑程式编写时的一套命名规则(惯例)。正如它的名称CamelCase所表示的那样,是指混合使用大小写字母来构成变量和函数的名字。程序员们为了自己的代码能更容易的在同行之间交流,所以多采取统一的可读性比较好的命名方式。

一个类有多个对象,每个对象的属性独立不受其他影响,那么属性是什么?
属性:类的属性,根据其类型:​ 整型(byte,short,int , long),浮点型(float,double),字符型(char),布尔型(boolean) ,都有默认初始化值.

🐳 关于变量的赋值:java中是值传递的方式,

👋值传递机制:
如果参数是基本数据类型,此时实参赋给形参的是实参真实存储的数据值。

如果参数是引用数据类型,此时实参赋给形参的是实参存储的数据地址值。

 public class ArrayTest{
  public static void main(String[] args){
    int [] arr = new int []{1,2,3};
    System.out.println(arr);//输出地址值
    
    char []arr1 = new char []{'a','b','c'};
    System.out.println(arr1);//输出abc
     }
    }

正如上面这个例子输出的是 char型数组的时候 默认为遍历输出该数组。而不是地址值

💖今天主要介绍了面向对象编程的基本概念,类,对象,方法,属性以及四种修饰符,讲的比较基础,希望大家喜欢。

在这里插入图片描述

评论 36
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值