欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java学习第九天

程序员文章站 2023-11-15 19:29:52
周总结:1.面向对象:把不同的功能封装在不同的对象中,用到什么功能就找相应的对象 首先要定义描述对象的类,类是用来创建对象的 new Person() >JVM使用的是Person.class来创建对象的,字节码中定义了说什么,对象中就有什么 2.成员变量:作用域是整个类,有默认值,在堆中开辟内存3 ......

周总结:
1.面向对象:把不同的功能封装在不同的对象中,用到什么功能就找相应的对象

     首先要定义描述对象的类,类是用来创建对象的

     new person()----->jvm使用的是person.class来创建对象的,字节码中定义了说什么,对象中就有什么

2.成员变量:作用域是整个类,有默认值,在堆中开辟内存
3.局部变量:作用域是所在大括号,没有默认值,在栈中开辟内存

 

4.jvm加载person().class到方法区,(用谁就加载谁,加载到内存),main函数入栈,执行main函数中的代码
  在栈中开辟内存,给ren这个局部变量,在堆中开辟内存(内存的大小依据成员变量)

5.构造函数:专门用来创建对象的,一个类中如果没有构造函数,那么系统的会自动加一个构造函数:类名(){}
  自己加入了构造函数,那么系统就不会自动加入构造函数了

  函数名和类名相同,不能有返回值类型
  可以利用构造函数实现属性的赋值

6.this:是一个引用,总是指向当前正在被使用的对象
   是构造函数之间的调用,必须卸载第一行的位置

7.super
8.static:修饰符,可以修饰成员变量,成员方法,成员内部类
  修饰成员变量:成员变量的值可以被所属类的所有对象共享
  修饰成员方法:该方法没有用到所属类的任何非静态成员

  被static修饰的,随着类的加载就进入方法区的静态区
  静态之呢个使用静态,非静态什么都可以使用


9.应用:工具类 javadoc -d 目录 xx.java

 

10静态代码块:static{}
  随着类的加载而执行,只执行一次,优先于main的执行

  构造代码块:
  {}
  对象一创建就执行,优先于构造函数的执行

11.单例设计模式:保证一个类只有一个对象
  

1 class yhw{
2 private yhw(){}//不能new对象
3 private    static final yhw y=new yhw();
4 public static yhw getinstance()
5 {
6 return y;
7 }
8 }

 


12.继承:多个对象共性的东西提取到一个类中。extends 单继承,代码的复用,父子关系

  成员变量:同名:用的是子类自己的 如果使用父类的:super.num
  成员方法:重写:子类出现了和父类一样的方法,只要创建的是子类的对象,使用的就是子类的

  构造函数:创建子类对象时,总是先执行父类的构造函数,在执行子类的构造函数
       系统自动在子类构造函数的第一行加入了super()------>调用父类的空参构造函数


13.为了利用父类中给属性赋值的代码,super(name,age,address);
 注意:每个类都要定义空参的构造方法,防止子类出错


14.final:可以修饰类,方法,成员变量,局部变量
15.抽象类:对多个对象提取父类的过程中出现的

 

 

16.接口:

1 interface inner
2 {
3 public static final int num=9;//常量,没有变量
4 public abstract void show();
5 }
6 class demo implements inner
7 {
8 }

  接口就是特殊的类

17.多态:fu f=new zi();
  成员变量:能访问的是父类的,结果看父类
  成员方法:能访问的是父类的,结果看子类
  静态:看父类


18内部类:成员内部类、静态内部类、局部内部类、匿名内部类