您的位置:首页 > 编程语言 > Java开发

Java Day 5

2015-12-26 00:22 447 查看
今天由于有事,没什么时间进行多的内容的学习。明天补上!

1.java中的构造方法
   使用new + 构造方法  创建一个新的对象
   构造方法是定义在java类中的一个用来初始化对象的方法(构造方法也是方法)

   特点:
   public 构造方法名(){
    //初始化代码
   }
    没有返回值
    方法名与类名相同
    可以指定参数
  java中可以有多个构造函数,如果没有申明构造函数,会自动默认一个无参的构造函数
  如果指定了一个有参的构造函数,这个时候是不会默认一个无参的构造函数
  要是在创建对象的时候用的是无参的构造函数就会报错,所以,一般会在申明有参构造函数的同时,申明一个无参的构造函数,防止出错。
2.java中static关键字
  static可以用来修饰方法也可以用来修饰变量
  静态方法:可以在没有创建对象的情况下,直接通过类名来调用。所以在静态方法中
                    不能访问非静态方法和非静态变量,但是在非静态方法和变量中,可以调用
                    静态方法和成员。
                    在普通方法中可以直接访问同类的非静态变量和静态变量,静态方法中不能直接访问非静态变量!!!
 静态变量:静态变量可以被所有类的对象共享,在内存中只存在一个副本,只会在类加载的时候
                  被初始化,而非静态变量只有在创建对象的时候才会被初始化,当类创建多个对象的时候
                  就会存在多个副本,并且各个副本之间是互不影响。
                  static不可以用来修饰局部变量,没有为什么,java语法!

static初始化块:static关键字还有一个比较关键的作用就是
用来形成静态代码块以优化程序性能。static块可以置于类中的任何地方,类中可以有多个static块。
                   在类初次被加载的时候,会按照static块的顺序来执行每个static块,并且只会执行一次。在类加载的时候,静态初始化块执行一次,并且静态初始化
                   块只能给静态变量赋值,不能初始化普通的成员变量。
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: