<<java编程思想>>:

1、static方法就是没有this的方法。

2、在static方法内部非静态方法。

3、在没有创建对象的前提下,可以通过类本身来调用static修饰的方法。

a.static它的特性:只会在类加载的时候执行一次。static成员变量的初始化顺序按照定义的顺序进行初始化

b.static 代码块可以优化程序性能,它的特性:只会在类加载的时候执行一次。很多时候,初始化操作我们都放在静态块中。

练习:

1.this代表的是当前对象,static修饰的变量是被对象享有的。而方法里面的变量是局部变量,不能申明为static.

public class Test1 {  
static int value = 88; public static void main(String[] args) throws Exception{
new Test1().printValue();
} private void printValue(){
int value = 99;
System.out.println(this.value);
}
}

  

执行结果为  88.

2.静态方法中不能访问非静态成员方法和非静态成员变量

private  static int a=1;
private int b=1; public static void test1(){
System.out.println(a);
System.out.println(b); //1错误
test2();//2错误
}
public void test2(){
System.out.println(a);
System.out.println(b);
test1();
}

  

3.子类,父类静态代码块,构造方法执行顺序。

/**
* @author tangquanbin
*/
public class Dad {
static {
System.out.println("dad static");
} public Dad() {
System.out.println("dad constructor");
}
}

  

/**
* @author tangquanbin
*/
public class Son extends Dad {
static {
System.out.println("son static");
} public Son() {
System.out.println("son constructor");
}
}

  

/**
* @author tangquanbin
*/
public class Test { public static void main(String[] args) {
Son son = new Son();
}
}

  

输出结果:

dad static
son static
dad constructor
son constructor

java中static学习总结的更多相关文章

  1. Java学习笔记十七:Java中static使用方法

    Java中static使用方法 一:Java中的static使用之静态变量: 我们都知道,我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立.然而在某些时候,我们更希望该类所有的 ...

  2. java中static关键字的作用

    java中static关键字主要有两种作用: 第一:为某特定数据类型或对象分配单一的存储空间,而与创建对象的个数无关. 第二,实现某个方法或属性与类而不是对象关联在一起 简单来说,在Java语言中,s ...

  3. Java中static的用法,初始化块

    使用 Arrays 类操作 Java 中的数组语法: Arrays.sort(数组名); 可以使用 sort( ) 方法实现对数组的排序,只要将数组名放在 sort( ) 方法的括号中,就可以完成对该 ...

  4. Java中static块执行时机

    Java中static块执行时机 演示例子 在使用static进行初始化的操作,怎么也执行不了!代码如下: public class StaticDemo { public static final ...

  5. java中static变量和方法的总结

    转自:http://blog.csdn.net/haobo920/article/details/5921621 java中static变量和方法的总结 java中一切皆是对象 一个类中对象的定义一般 ...

  6. Java中static final 与 final 的区别(转载)

    转自:http://advance0683.iteye.com/blog/1107732 Java中static final 与 final 的区别: 例子: Java代码 import java.u ...

  7. Java中static修饰类的问题

    Java中static修饰类的问题 众所周知,Java中static关键字可以修饰方法与变量: 修饰变量的时候,这个变量属于类变量,可以直接通过类名.变量名来引用. 修饰方法的时候可以直接通过类名.方 ...

  8. Java 中 static 的作用

    static 关键字的作用 在 Java 中 static 关键字有4种使用场景,下面分别进行介绍: 1.static 成员变量 public class Student { // 静态成员变量 pr ...

  9. java中static的学习

    1.static引入: 通常来说,当创建一个类是,就是在描述那个类的对象的外观与行为.除非用new创建那个类的对象,否则实际并未获取任何对象.当执行new来创建对象时,数据存储空间才被分配,七方法才供 ...

随机推荐

  1. I - Andy's First Dictionary(set+stringstream)

    Description Andy, 8, has a dream - he wants to produce his very own dictionary. This is not an easy ...

  2. svn报错:Cannot negotiate authentication mechanism

    在使用eclipse的svn插件连接osc的代码仓库时候,发生了以下错误: Cannot negotiate authentication mechanismsvn: Unable to connec ...

  3. SpringBoot-redis-session

    配置pom <parent> <groupId>org.springframework.boot</groupId> <artifactId>sprin ...

  4. html与html5 总结

    时间:于2017年12月3日 19:35:18开始 用于: 这文章用于个人技术总结(全文转发请标明出处,小段摘抄随意) HTML笔记1.html标签不区分大小写,但是建议小写2.常用标签: 可用在he ...

  5. 带有空格或tab的字符串的判断

    class test { public static void main(String[] args) { String a = " "; //带有空格的字符串 if ( a.is ...

  6. Codeforces_768_B_(二分)

    B. Code For 1 time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...

  7. Java_大数值_16.5.12

    如果基本的整数和浮点数精度不能满足要求,那么可以使用java.math包中的BigInteger和BigDecimal这两个类.这两个类可以处理包含任意长度数字序列的数值.BigInteger类实现了 ...

  8. ARX亮显问题

    转载一段acedSSSetFirst的用法仅供参考:打个比方,我创建了一个命令,这个命令的功能是提示用户选择,然后只过滤文本对象作为选择集,随后在屏幕上使得这个选择集的所有成员都亮显,并且能够显示出各 ...

  9. laydate.js 月份区间选择插件

    laydate.render({ elem: '#reservation2' , type: 'month' , range: true, //format: '2018/09', theme: '# ...

  10. 【转载】Java下利用Jackson进行JSON解析和序列化

    参考资料: https://blog.csdn.net/sdut406/article/details/85647982 Java下常见的Json类库有Gson.JSON-lib和Jackson等,J ...