java全栈day12----final static 匿名对象 内部类 包的声明与访问

final关键字概念

   继承的出现提高了代码的复用性,并方便开发。但随之也有问题,有些类在描述完之后,不想被继承,

或者有些类中的部分方法功能是固定的,不想让子类重写。可是当子类继承了这些特殊类之后,
就可以对其中的方法进行重写,那怎么解决呢?
要解决上述的这些问题,需要使用到一个关键字final,final的意思为最终,不可变。
final是个修饰符,它可以用来修饰类,类的成员,以及局部变量。

ex:

class Yy {}
final class Fu extends Yy{} //可以继承Yy类
class Zi extends Fu{} //不能继承Fu类

   

static的概念
*概念
当在定义类的时候,类中都会有相应的属性和方法。而属性和方法都是通过创建本类对象调用的。

ex:

class Demo {
public static int num = 100;
  }

class Test {
  public static void main(String[] args) {
    Demo d1 = new Demo();
    Demo d2 = new Demo();
    d1.num = 38;
    System.out.println(d1.num); 
    System.out.println(d2.num); 
  }
}

匿名对象
* A:匿名对象的概述
* 匿名对象是指创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。
* B:案例
public class Person{
public void eat(){
System.out.println();
}
}

创建一个普通对象
Person p = new Person();
创建一个匿名对象
new Person();

内部类的概述
将类写在其他类的内部,可以写在其他类的成员位置和局部位置,这时写在其他类内部的类就称为内部类。
其他类也称为外部类。
* B: 什么时候使用内部类
在描述事物时,若一个事物内部还包含其他可能包含的事物,比如在描述汽车时,汽车中还包含这发动机,
这时发动机就可以使用内部类来描述。
class 房子 { //外部类
class 家具 { //内部类
  }
}

包的概念
* A: 概念
java的包,其实就是我们电脑系统中的文件夹,包里存放的是类文件。

类中声明的包必须与实际class文件所在的文件夹情况相一致,即类声明在a包下,则生成的.class文件必须在a文件夹下,否则,程序运行时会找不到类。

声明格式
通常使用公司网址反写

兜兜程序员网址itdoudou.com那么网址反写就为com.itdoudou

包的访问
在访问类时,为了能够找到该类,必须使用含有包名的类全名(包名.类名)。
包名.包名….类名
如: java.util.Scanner
java.util.Random
cn.itdoudou.Demo

我们每次使用类时,都需要写很长的包名。很麻烦,我们可以通过import导包的方式来简化。

java.util.Random r1 = new java.util.Random();
java.util.Random r2 = new java.util.Random();

//导入包后的方式
import java.util.Random;
import java.util.Scanner;
//创建对象
Random r1 = new Random();
Random r2 = new Random();

原文地址:https://www.cnblogs.com/lijun6/p/9478561.html