黑马程序员_java基础笔记第三天

来源:互联网 发布:网络无线数传 编辑:程序博客网 时间:2024/05/18 13:45

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

面向对象
 
一 定义:
 1 面向对象那个是基于面向过程的一种思想。
 2 在程序中使用对象来映射现实事物,和描述事物间的关系。
                                                                           
二 特点:
 1 符合人们思考习惯的思想。
 2 将复杂的事情简单化。
 3 将执行着变成指挥者。

三 事物的体现:
 1 属性。
 2 行为。
 描述事物就是在描述事物的属性和行为。
 
四 类与对象的关系:
 1 类:是相关属性和行为的集合。是一种抽象的表现形式。
 2 对象:是某种事物的具体体现,是真实存在的。

五 创建和使用对象
 1 格式 :
  类名 对象名 = new 类名();

 2 使用方法和属性:
  对象.成员变量
  对象.成员方法

 3 注意:1 当成员为private修饰是外界是不可以访问的。
  2 当成员被static修饰是可以被类名直接调用。

 4 对象在内存的分布:
  1 对象都存放在对内存中。 
  2 对象的引用在站内村中,

 5 匿名对象:
  1 没有名字的对象,曾做匿名对象。
  2 当对象调用一次是可以使用匿名对象,需要调用对此是需要给对象起名字。
  3 可以作为形式参数进行传递。

 6 成员变量与局部变量的特点:
  1 成员变量整个类中有效,存在于堆内存中的对象内,使用完不会立即消失,会等垃圾回收机制回收。
  2 局部变量在方法中有效,存放在占内存中使用完毕立即消失。

六 构造方法:
 1 作用:
  用于给对象初始化。

 2 格式
  类名(成员变量)
  {
   给成员变量赋初始值。 
  }

 3 特点:
  1 当类中没有定义其他构造方法时类中有一个隐式的空构造方法。
  2 当定义了有参沟槽方法时无参会消失,需要调用无参数构造方法时需手动给出。
  3 每个构造方法内第一行都有一个父类的空构造方法,因为需要看父类是怎么初始化的。

 4 this:
  1 表示当先对象的引用。
  2 中能在本类中使用。
  3 只能放在方法中使用。

七 静态 static:
 1定义:
  1 是成员修饰符,只能修饰成员。
  
 2 特点:
  1 随着类的加载而加载,随着类的消失而消失。
  2 生命周期最长。
  3 优先于对象存在。
  4 只加载一次。
  5 封装为共享数据,节约内存。
  6 可被类型调用。

 3 静态方法:
  1 只能访问静态成员。
  2 当方法内没有调用私有成员时可以设置为静态方法。
  3 静态中比可以有this,super关键字,因为随着类的加载而加载,还没有对象。

八 单例设计模式:
  1 确保对象的唯一性,内存中只能有一个本类对象。
  2 推举使用饿汉式,因为延迟加载代码不简洁而且不安全。

饿汉式:
public class Single {
 private Single(){};
 private Single sing=new Single();
 public static Single getInstance()
 {
  return sing;
 }
}

懒汉式:延迟加载
 注意:多线程访问时会有病发异常所以要加锁,锁是该类的字节码文件。

public class Single {
 private Single(){};
 private static Single sing=null;
 public static Single getInstance()
 {
  if(sing==null)
  {
   synchronized (Single.class) {
   if(sing==null)
   {
     sing=new Single();
   }
  }
 }
  return sing;
}
}


九 面向对象的三大特性:封装,继承,多态
 1 封装:
  1 封装是隐藏细节,属性,对外提供方法。
  2 提高安全性。 
  3 提高复用性。
  4 便于使用。
  
 2 继承:extends
  
  1 一个类是另一个类的一种就可以继承这个类,拥有了所有父类的方法和属性。
  2 父类是又很多子拥有共同属性和方法,向上不断抽取出而来的。
  3 java可以多成继承,没有多继承,但有多实现,interface。
 3 super:
  1 和this用法相同只能在本方法中使用。
  2  构造方法放在第一行。
 4 final:
  1 可以修饰成员变量,局部变量,方法和类。
  2 被final修饰的变量时常量。
  3 被final修饰的方法不可以被重写。
  4 被final修饰的类不可以被继承。
十 抽象类:
 1 定义:
  1 类中有些方法没有方法主体的类,是抽像类。
  2 方法没有定义内容,需要子类强行复写此方法,由子类完成具体实现。
  
 2 特点:
  1 方便继承。
  2 子类没有复写全部的抽象方法,子类还是抽象类。
  3 不可以建立对象。
  4 abstract不可以和final共存,其作用刚好相反。
  5 不可以和static共存,类名调用无意义。
十一多态:
 定义:
  1:事物存在多种表现形式称之为多态,在不同状态下有不同的状态。

 特点:
  1 可以实现父类引用指向子类对象.
  2 父类的引用接收子类对象。
  3 提高了程序的扩展性和可维护性。

 前提:必须存在继承关系或实现以个接口。
 
 应用:
  1 方法编译看左边运行看右边。
  2 属性看左边。定义了相同变量也看引用变量。
  3 调用特有属性,方法时要强制转换子类调用。
  4 多态调用静态时是调用的父类的方法。

十二 接口:
 定义:
  1 是抽象方法的集合。
  2 弥补单继承的缺陷。
  3 成员变量前默认加:public static final。
  4 成员方法前默认加 public abstract 。
 
 特点:
  1 提高了扩展性。
  2 降低了耦合性。
  3 没有构造方法。
  4 可以多实现。


 注意:当接口内抽象方法不超过3个时,可以采用匿名内部类形式。
  new joggle()
  {
   public void show()
   {
    System.out.println("复写方法");
   }
  }.show();
  是匿名子类对象。

 

面向对象
 
一 定义:
 1 面向对象那个是基于面向过程的一种思想。
 2 在程序中使用对象来映射现实事物,和描述事物间的关系。
                                                                           
二 特点:
 1 符合人们思考习惯的思想。
 2 将复杂的事情简单化。
 3 将执行着变成指挥者。

三 事物的体现:
 1 属性。
 2 行为。
 描述事物就是在描述事物的属性和行为。
 
四 类与对象的关系:
 1 类:是相关属性和行为的集合。是一种抽象的表现形式。
 2 对象:是某种事物的具体体现,是真实存在的。

五 创建和使用对象
 1 格式 :
  类名 对象名 = new 类名();

 2 使用方法和属性:
  对象.成员变量
  对象.成员方法

 3 注意:1 当成员为private修饰是外界是不可以访问的。
  2 当成员被static修饰是可以被类名直接调用。

 4 对象在内存的分布:
  1 对象都存放在对内存中。 
  2 对象的引用在站内村中,

 5 匿名对象:
  1 没有名字的对象,曾做匿名对象。
  2 当对象调用一次是可以使用匿名对象,需要调用对此是需要给对象起名字。
  3 可以作为形式参数进行传递。

 6 成员变量与局部变量的特点:
  1 成员变量整个类中有效,存在于堆内存中的对象内,使用完不会立即消失,会等垃圾回收机制回收。
  2 局部变量在方法中有效,存放在占内存中使用完毕立即消失。

六 构造方法:
 1 作用:
  用于给对象初始化。

 2 格式
  类名(成员变量)
  {
   给成员变量赋初始值。 
  }

 3 特点:
  1 当类中没有定义其他构造方法时类中有一个隐式的空构造方法。
  2 当定义了有参沟槽方法时无参会消失,需要调用无参数构造方法时需手动给出。
  3 每个构造方法内第一行都有一个父类的空构造方法,因为需要看父类是怎么初始化的。

 4 this:
  1 表示当先对象的引用。
  2 中能在本类中使用。
  3 只能放在方法中使用。

七 静态 static:
 1定义:
  1 是成员修饰符,只能修饰成员。
  
 2 特点:
  1 随着类的加载而加载,随着类的消失而消失。
  2 生命周期最长。
  3 优先于对象存在。
  4 只加载一次。
  5 封装为共享数据,节约内存。
  6 可被类型调用。

 3 静态方法:
  1 只能访问静态成员。
  2 当方法内没有调用私有成员时可以设置为静态方法。
  3 静态中比可以有this,super关键字,因为随着类的加载而加载,还没有对象。

八 单例设计模式:
  1 确保对象的唯一性,内存中只能有一个本类对象。
  2 推举使用饿汉式,因为延迟加载代码不简洁而且不安全。

饿汉式:
public class Single {
 private Single(){};
 private Single sing=new Single();
 public static Single getInstance()
 {
  return sing;
 }
}

懒汉式:延迟加载
 注意:多线程访问时会有病发异常所以要加锁,锁是该类的字节码文件。

public class Single {
 private Single(){};
 private static Single sing=null;
 public static Single getInstance()
 {
  if(sing==null)
  {
   synchronized (Single.class) {
   if(sing==null)
   {
     sing=new Single();
   }
  }
 }
  return sing;
}
}


九 面向对象的三大特性:封装,继承,多态
 1 封装:
  1 封装是隐藏细节,属性,对外提供方法。
  2 提高安全性。 
  3 提高复用性。
  4 便于使用。
  
 2 继承:extends
  
  1 一个类是另一个类的一种就可以继承这个类,拥有了所有父类的方法和属性。
  2 父类是又很多子拥有共同属性和方法,向上不断抽取出而来的。
  3 java可以多成继承,没有多继承,但有多实现,interface。
 3 super:
  1 和this用法相同只能在本方法中使用。
  2  构造方法放在第一行。
 4 final:
  1 可以修饰成员变量,局部变量,方法和类。
  2 被final修饰的变量时常量。
  3 被final修饰的方法不可以被重写。
  4 被final修饰的类不可以被继承。
十 抽象类:
 1 定义:
  1 类中有些方法没有方法主体的类,是抽像类。
  2 方法没有定义内容,需要子类强行复写此方法,由子类完成具体实现。
  
 2 特点:
  1 方便继承。
  2 子类没有复写全部的抽象方法,子类还是抽象类。
  3 不可以建立对象。
  4 abstract不可以和final共存,其作用刚好相反。
  5 不可以和static共存,类名调用无意义。
十一多态:
 定义:
  1:事物存在多种表现形式称之为多态,在不同状态下有不同的状态。

 特点:
  1 可以实现父类引用指向子类对象.
  2 父类的引用接收子类对象。
  3 提高了程序的扩展性和可维护性。

 前提:必须存在继承关系或实现以个接口。
 
 应用:
  1 方法编译看左边运行看右边。
  2 属性看左边。定义了相同变量也看引用变量。
  3 调用特有属性,方法时要强制转换子类调用。
  4 多态调用静态时是调用的父类的方法。

十二 接口:
 定义:
  1 是抽象方法的集合。
  2 弥补单继承的缺陷。
  3 成员变量前默认加:public static final。
  4 成员方法前默认加 public abstract 。
 
 特点:
  1 提高了扩展性。
  2 降低了耦合性。
  3 没有构造方法。
  4 可以多实现。


 注意:当接口内抽象方法不超过3个时,可以采用匿名内部类形式。
  new joggle()
  {
   public void show()
   {
    System.out.println("复写方法");
   }
  }.show();
  是匿名子类对象。

面向对象
 
一 定义:
 1 面向对象那个是基于面向过程的一种思想。
 2 在程序中使用对象来映射现实事物,和描述事物间的关系。
                                                                           
二 特点:
 1 符合人们思考习惯的思想。
 2 将复杂的事情简单化。
 3 将执行着变成指挥者。

三 事物的体现:
 1 属性。
 2 行为。
 描述事物就是在描述事物的属性和行为。
 
四 类与对象的关系:
 1 类:是相关属性和行为的集合。是一种抽象的表现形式。
 2 对象:是某种事物的具体体现,是真实存在的。

五 创建和使用对象
 1 格式 :
  类名 对象名 = new 类名();

 2 使用方法和属性:
  对象.成员变量
  对象.成员方法

 3 注意:1 当成员为private修饰是外界是不可以访问的。
  2 当成员被static修饰是可以被类名直接调用。

 4 对象在内存的分布:
  1 对象都存放在对内存中。 
  2 对象的引用在站内村中,

 5 匿名对象:
  1 没有名字的对象,曾做匿名对象。
  2 当对象调用一次是可以使用匿名对象,需要调用对此是需要给对象起名字。
  3 可以作为形式参数进行传递。

 6 成员变量与局部变量的特点:
  1 成员变量整个类中有效,存在于堆内存中的对象内,使用完不会立即消失,会等垃圾回收机制回收。
  2 局部变量在方法中有效,存放在占内存中使用完毕立即消失。

六 构造方法:
 1 作用:
  用于给对象初始化。

 2 格式
  类名(成员变量)
  {
   给成员变量赋初始值。 
  }

 3 特点:
  1 当类中没有定义其他构造方法时类中有一个隐式的空构造方法。
  2 当定义了有参沟槽方法时无参会消失,需要调用无参数构造方法时需手动给出。
  3 每个构造方法内第一行都有一个父类的空构造方法,因为需要看父类是怎么初始化的。

 4 this:
  1 表示当先对象的引用。
  2 中能在本类中使用。
  3 只能放在方法中使用。

七 静态 static:
 1定义:
  1 是成员修饰符,只能修饰成员。
  
 2 特点:
  1 随着类的加载而加载,随着类的消失而消失。
  2 生命周期最长。
  3 优先于对象存在。
  4 只加载一次。
  5 封装为共享数据,节约内存。
  6 可被类型调用。

 3 静态方法:
  1 只能访问静态成员。
  2 当方法内没有调用私有成员时可以设置为静态方法。
  3 静态中比可以有this,super关键字,因为随着类的加载而加载,还没有对象。

八 单例设计模式:
  1 确保对象的唯一性,内存中只能有一个本类对象。
  2 推举使用饿汉式,因为延迟加载代码不简洁而且不安全。

饿汉式:
public class Single {
 private Single(){};
 private Single sing=new Single();
 public static Single getInstance()
 {
  return sing;
 }
}

懒汉式:延迟加载
 注意:多线程访问时会有病发异常所以要加锁,锁是该类的字节码文件。

public class Single {
 private Single(){};
 private static Single sing=null;
 public static Single getInstance()
 {
  if(sing==null)
  {
   synchronized (Single.class) {
   if(sing==null)
   {
     sing=new Single();
   }
  }
 }
  return sing;
}
}


九 面向对象的三大特性:封装,继承,多态
 1 封装:
  1 封装是隐藏细节,属性,对外提供方法。
  2 提高安全性。 
  3 提高复用性。
  4 便于使用。
  
 2 继承:extends
  
  1 一个类是另一个类的一种就可以继承这个类,拥有了所有父类的方法和属性。
  2 父类是又很多子拥有共同属性和方法,向上不断抽取出而来的。
  3 java可以多成继承,没有多继承,但有多实现,interface。
 3 super:
  1 和this用法相同只能在本方法中使用。
  2  构造方法放在第一行。
 4 final:
  1 可以修饰成员变量,局部变量,方法和类。
  2 被final修饰的变量时常量。
  3 被final修饰的方法不可以被重写。
  4 被final修饰的类不可以被继承。
十 抽象类:
 1 定义:
  1 类中有些方法没有方法主体的类,是抽像类。
  2 方法没有定义内容,需要子类强行复写此方法,由子类完成具体实现。
  
 2 特点:
  1 方便继承。
  2 子类没有复写全部的抽象方法,子类还是抽象类。
  3 不可以建立对象。
  4 abstract不可以和final共存,其作用刚好相反。
  5 不可以和static共存,类名调用无意义。
十一多态:
 定义:
  1:事物存在多种表现形式称之为多态,在不同状态下有不同的状态。

 特点:
  1 可以实现父类引用指向子类对象.
  2 父类的引用接收子类对象。
  3 提高了程序的扩展性和可维护性。

 前提:必须存在继承关系或实现以个接口。
 
 应用:
  1 方法编译看左边运行看右边。
  2 属性看左边。定义了相同变量也看引用变量。
  3 调用特有属性,方法时要强制转换子类调用。
  4 多态调用静态时是调用的父类的方法。

十二 接口:
 定义:
  1 是抽象方法的集合。
  2 弥补单继承的缺陷。
  3 成员变量前默认加:public static final。
  4 成员方法前默认加 public abstract 。
 
 特点:
  1 提高了扩展性。
  2 降低了耦合性。
  3 没有构造方法。
  4 可以多实现。


 注意:当接口内抽象方法不超过3个时,可以采用匿名内部类形式。
  new joggle()
  {
   public void show()
   {
    System.out.println("复写方法");
   }
  }.show();
  是匿名子类对象。

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
0 0
原创粉丝点击