2018年4月第一周学习笔记——JAVA面向对象初步

1. 类的基本定义形式

Java中,最简单的类定义形式为:

class ClassName

{

    fields……

    constructors……

    methods……

}

一般类名的首字母要大写。

2. 访问修饰符——public和private

在一个源文件中,只能有一个public类,并且文件名必须与public类名字相同,一般将包含main方法的类声明为public类。一般将数据域设置为私有,如果要访问或者更改,可以设置相应的公有的访问器或是更改器方法。

相同类的不同对象实例可以彼此访问对方的私有域。

3. 静态域与静态方法——static修饰符

其实称之为“类域”和“类方法”更好理解,因为静态域与静态方法通常属于一个类而不属于该类的任何实例,调用时也用类名调用(典型的如Math类)。

(1)静态变量

一般用private static声明,每个类中只有一个这样的域,而每个对象都有一份拷贝。

(2)静态常量

少有的声明为public的数据域(一般用public static final声明),因为是常量,不用担心封装性被破坏,可以通过类直接访问调用(典型如Math.PI、System.out等等)。

(3)静态方法

静态方法不能向对象施加操作,换言之,即没有隐式参数,不过可以访问和操作该类的静态变量。此外,main方法也是静态方法,工厂方法(factory method)也是静态方法,常用于生产不同风格的格式化对象,或者需要构造一个该类的子类的对象时,可以使用工厂方法。

4. 构造器及其重载

构造器的名字必须与类相同。同时,构造器可以重载。

(1)一般设置一个无参数的构造器,用于设置默认值。

(2)用this调用同一个类的另一个构造器(该方法十分有用,对于一个具有很多构造器的类,公共部分的代码只需编写一份,再用this关键字调用即可)。

(3)其他初始化方法(一般在构造器之前执行):

①显式初始化:在定义一个数据域时,直接将一个值赋值给数据域(有时候也可以调用一个方法进行初始化)。

②初始化块。

5. 包(package)

包用于组织类,使用包的主要原因之一是确保类名的唯一性,例如util包和sql包中的Date类被认为是不同的类。

(1)包的导入——import语句

import语句可以导入一个特定的类或者整个包,也可以使用*号来导入整个包,例如要导入LocalDate类,可以使用语句

import java.time.LocalDate;

也可以使用语句

import java.time.*;

静态导入:可以使用import static来导入某个类的特定或所有静态域、静态方法。

(2)将类放入包中——package语句

package语句位于整个源文件的最上方,若不显式地声明,则这个源文件中的类会被放置在默认包中。



猜你喜欢

转载自blog.csdn.net/setsuna_ogiso/article/details/79830302