java基础(七)
代码块的概述和分类
* A:代码块概述
* 在Java中,使用{}括起来的代码被称为代码块。
* B:代码块分类
* 根据其位置和声明的不同,可以分为局部代码块,构造代码块,静态代码块,同步代码块(多线程讲解)。
* C:常见代码块的应用
* a:局部代码块
* 在方法中出现;限定变量生命周期,及早释放,提高内存利用率
* b:构造代码块 (初始化块)
* 在类中方法外出现;多个构造方法方法中相同的代码存放到一起,每次调用构造都执行,并且在构造方法前执行
* c:静态代码块
* 在类中方法外出现,并加上static修饰;用于给类进行初始化,在加载的时候就执行,并且只执行一次。
* 一般用于加载驱动
class Student { static { System.out.println("Student 静态代码块"); } { System.out.println("Student 构造代码块"); } public Student() { System.out.println("Student 构造方法"); } } class Demo2_Student { static { System.out.println("Demo2_Student静态代码块"); } public static void main(String[] args) { System.out.println("我是main方法"); Student s1 = new Student(); Student s2 = new Student(); } }
继承案例演示
class Demo1_Extends { public static void main(String[] args) { Cat c = new Cat(); c.color = "花"; c.leg = 4; c.eat(); c.sleep(); System.out.println(c.leg + "..." + c.color); } } /* * A:继承(extends) * 让类与类之间产生关系,子父类关系 * B:继承案例演示: * 动物类,猫类,狗类 * 定义两个属性(颜色,腿的个数)两个功能(吃饭,睡觉) * C:案例演示 * 使用继承前 * D:案例演示 * 使用继承后 */ class Animal { String color; //动物的颜色 int leg; //动物腿的个数 public void eat() { //吃饭的功能 System.out.println("吃饭"); } public void sleep() { //睡觉的功能 System.out.println("睡觉"); } } class Cat extends Animal { } class Dog extends Animal { } /* extends是继承的意思 Animal是父类 Cat和Dog都是子类 */
继承的好处和弊端
* A:继承的好处
* a:提高了代码的复用性
* b:提高了代码的维护性
* c:让类与类之间产生了关系,是多态的前提
* B:继承的弊端
* 类的耦合性增强了。
* 开发的原则:高内聚,低耦合。
* 耦合:类与类的关系
* 内聚:就是自己完成某件事情的能力
继承其实体现的是一种关系:"is a"。
final关键字修饰类,方法以及变量的特点
* A:final概述
* B:final修饰特点
* 修饰类,类不能被继承
* 修饰变量,变量就变成了常量,只能被赋值一次
* 修饰方法,方法不能被重写
* C:案例演示
* final修饰特点
。。