相关其变量,方法,代码块,内部类等用法,有点模糊。
解决方案 »
- 报错说: 无法从静态上下文中引用非静态 变量 this和this.go();
- 同时创建文件和向文件中输入数据问题
- Generated servlet error:Invalid character constant
- 如何让数字自增的同时高位补0?
- 我现在做"世界杯足球赛成绩统计",但不懂怎么实现添加、删除、修改记录。
- jsp中文问题
- ▲▲为什么?为什么?下拉菜单浮起来了▲▲
- 两个错误,求解!
- 有没有人在安装jbuilder的时候,遇到过这样的问题,在进入jbuilder时出现unknown license file format提示,那么又是怎样解决的,可否告
- 我如此的实例化FILER组件有什么错误,请执教!
- 大家好!请教,如何在登录前对密码进行检测
- 请问一个页面正则表达式
package org.lxh.staticdemo;class Person1 {
private String name; private static int count; public Person1() {
count++;
this.name = "NONAME--" + count;
} public Person1(String name) {
this.name = name;
} public String getInfo() {
return "姓名:" + this.name;
}
}public class StaticAutoNameDemo {
public static void main(String args[]) {
System.out.println(new Person1().getInfo());
System.out.println(new Person1().getInfo());
System.out.println(new Person1("A").getInfo());
}}
2、计数:
package org.lxh.staticdemo;class Person {
private String name; private static int count; public Person() {
count++;
System.out.println("产生了第" + count + "个实例化对象!");
} public String getInfo() {
return "姓名:" + this.name;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
}
}public class StaticCountDemo {
public static void main(String args[]) {
Person per1 = new Person();
Person per2 = new Person(); per1 = null;
per2 = null; Person per3 = new Person();
Person per4= new Person(); }}
3、静态导包!
4、静态块:
package org.lxh.daimakuaidemo;class StaticKuai {
{// 构造块
System.out.println("=========构造块==========");
}
static {// 静态块:使用Static声明的代码块,主要为了静态属性初始化
System.out.println("=========类中的静态块==============");
} public StaticKuai() {
System.out.println("==========构造方法================");
}
}public class StaticKuaiDemo {
static {
System.out.println("===========主类中静态块===============");
} public static void main(String args[]) {
new StaticKuai();
new StaticKuai(); }}//说明了主类中的静态块优先与类中的静态块,(主)静态块优先于构造块,静态块也优先与主方法,
//并且静态块只执行一次
/**
* ===========主类中静态块===============
=========类中的静态块==============
=========构造块==========
==========构造方法================
=========构造块==========
==========构造方法================
*/
static int xx = 0; //静态变量
int kk = 1; //非静态变量
public static void main(String[] args) { //静态方法
xx = 1; //静态成员可以直接访问(也就是不需要实例)
tt(); //静态方法可以直接访问
B = new B(); //静态类内部类可以直接访问
A a = new A(); //创建实例
a.kk = 2; //通过实例访问非静态成员
a.qq(); //通过成员访问非静态方法
C = new a.C(); //通过成员访问非静态内部类
} static void tt() {
System.out.println("静态方法");
}
void qq() {
System.out.println("非静态方法");
} static {
System.out.println("静态代码块,类加载时调用");
} {
System.out.println("非静态代码块,类实例化时调用");
} static class B {
public B () {
System.out.println("静态内部类");
}
} class C {
public C() {
System.out.println("非静态内部类");
}
}
}
2)static定义的方法中不能使用非static的变量
2)用于静态数据成员或方法
3)用于静态块
不得不说你后面总结得很乱..哎
什么"主类" 叫超类好不1)超类的静态数据成员或静态块按定义顺序
2)本类的静态数据成员或静态块按定义顺序
3)超类的数据成员 或非静态块按定义顺序
4)超类的构造函数,或隐式默认或按子类构造函数中指定的super()带相关参数
5)子类数据成员或非静态块按定义顺序
6)子类的构造函数
import static java.lang.System.out;public class Test {
public static void main(String[] args) {
out.print("adfads");
}
}
静态导入!!!!!!!!!!!!!!