扫一扫,加我们为好友有惊喜哦~
-->

核心课程
开班动态
专题服务

您当前所在位置:首页 > 中心动态 >>
常州电脑培训——单例模式、抽象类

1、单例模式:在有些情况下,希望类生成的对象永远只有一个,这种模式叫单例

模式!

A、构造器私有化:不让别的类有生成该类实例的机会
B、提供私有的、静态的属性,返回该类的实例:
私有的原因是为了保护属性
静态的原因是为了保证该类的对象只有一个
C、提供共有的方法返回该类的属性

public class Person

 /**
   2、提供一个私有、静态的属性返回该类的实例!
 */
   private static Person p = new Person();

   /**
     1、构造方法私有化
   */
   private Person(){
  
   }

   /**
    3、提供共有的方法对外访问该类的属性
   */
   public static Person getPerson(){
     return p;
   }
}

2、final关键字
可以修饰:变量(属性、局部变量)、方法、类
A、final修饰类:表示类不能被继承
B、final修饰的变量是常量,表示改值不能被改变!
   常量一般大写!
   final修饰的属性需要在定义时赋值!final修饰的局部变量不需要在定义时赋

值,但需要在使用前赋值!
C、final修饰的方法不能被覆盖!
public class TestFinal
{
 final int x = 10;

 public static void main(String[] args){
    final int I;
    //i = 11; final的值不能被改变
    I = 11;
    System.out.println(I);
 }

 public void play(){
   System.out.println("play");
 }

}

class Test01 extends TestFinal
{
 public void play(){
   System.out.println("test01 play");
 }

 public static void main(String[] args){
   Test01 t = new Test01();
   t.play();
 }
}

3、抽象类
抽象方法:只有方法的声明,没有方法的实现的方法!
抽象类:如果一个类中有一个或多个抽象方法,则该类一定要是抽象类!
抽象类的作用:定义一套编码规范!
/**
  抽象类
*/
public abstract class Party
{
 /**
   抽象方法:只有方法的定义,没有方法的实现
 */
 public abstract void sing();

 public abstract void talk();

 public abstract void dance();

 public abstract void magic();
}

/**
  实现抽象类
*/
class PartyAction extends Party
{
 public void sing(){
   System.out.println("sing");
 }

 public void talk(){
   System.out.println("talk");
 }

 public void dance(){
   System.out.println("dance");
 }

 public void magic(){
   System.out.println("magic");
 }
}
 



返回顶部