一个视屏的时间教你学会Java面向对象进阶

Posted 另一个隐藏的世界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个视屏的时间教你学会Java面向对象进阶相关的知识,希望对你有一定的参考价值。

hello!我又来了,废话不多说,今天我们学习Java面向对象进阶!

面向对象进阶分为:1.成员变量

                                 2.this关键字

                                 3.隐藏和封装

                                 4.static 关键字

首先我们要明白什么是成员变量:

1.成员变量:在Java中,变量可以分为成员变量和局部变量,成员变量是定义在类里的变量,局部变量是定义在方法里的变量。

成员变量又分为实例变量和类成员变量(静态变量)!

语法:

[<修饰符>] [static] [final] <变量类型><变量名>

注意:1.static表示一个类的成员变量,即静态成员变量

            2.final :表示一个常量

举个例子:我们要创建一个to类,类里一个成员变量name和一个实例变量age那么语法是如下!

public class to{
 static String name;
 int  age;
}

2.this关键字

this关键字总是指向调用该方法的对象,它最大的作用就是让类中的一个方法访问该类中的另一个方法或实例成员变量

举个简单的例子:

我们可以发现我们传入进去的无敌并没有出现,而是出现了一个null(空)

下面我们加入this,来看下效果:

由此发现我们传入的无敌出现了,这是因为在Java中你两个相同地变量之间赋值,Java会分别不出你到底是谁传给谁,所以我们在加入this后,Java才会知道this.变量代表的是成员变量是把局部变量的值赋值给成员变量!

3.隐藏与封装

隐藏与封装的作用:1.隐藏类的实现细节

                                 2.让使用者只能通过事先预定的方法访问数据,从                                      而可以在该方法中加入控制 逻辑,限制对属性                                        的不合理访问

                                  3.可进行数据检查,从而有利于保证对象信息的                                         完整性

                                  4.便于修改,提高代码的可维护性

实现良好的封装,需要从以下两个方面考虑:

                                  1.隐藏对象属性和实现细节,不允许外                                                       部 直接访问。

                                  2.暴露出方法,让该方法控制这些属性                                                       名 进行安全的访问操作

这两个方面都需要使用Java提供的访问控制符实现:

我们接下就使用private(私有的)访问控制符举个例子:

我们创建Barracks类,然后在类里使用private控制符 修饰属性

现在我们在lpo类里调用Barracks类,我们就会发现,当我们访问name这个变量时就会报错

那么我们接下在同一类中访问会name看会不会报错:

结果是没有报错,这就是private控制符的作用,而我们一般在进行隐藏和封装时就要用到private控制符。

4.static关键字

Java类的运行包括类加载和实例化两个变量,当一个类被加载至Java中,静态成员会被初始化,被static修饰的成员即为静态成员。静态成员包括静态代码块、静态属性和静态方法。静态成员不属于莫个对象,仅属于静态成员所在的类。

静态属性:

静态方法:

注意:被static修饰的方法(静态方法),可以直接通过类名访问!

静态代码块:

说明:虽然main()方法时程序的入口方法,但该方法是类加载完成后,由Java虚拟机调用该方法,而静态代码块是在类加载时就执行,加载完成后才执行main()方法,则马上执行静态代码块,因此,图中输出的顺序是先按照静态代码块的顺序执行静态代码块,然后在执行main()方法!

好了,又要说拜拜了,今天的内容讲到这里!大家可以去试试手,看自己有没有学会。

下次我会继续带来新的知识!下次见!

以上是关于一个视屏的时间教你学会Java面向对象进阶的主要内容,如果未能解决你的问题,请参考以下文章

一个视屏的时间教你学会Java面向对象进阶

一个视屏的时间教你学会Java面向对象进阶

教你快速学会Java面向对象

教你快速学会Java面向对象

教你快速学会Java面向对象

四个步骤教你轻松学会Java编程