问题描述
- Java 构造函数 静态代码块
-
public class 静态 {public static void main(String[] args) { person p=new person(); p.show(); person p1=new person("xixi"); p1.show(); }
}
class person{ ** 这里显示“person"错误**
private String name;
{
cry();
}
{
System.out.println("哇哇");
}
person(){
name="xx";
}
person(String name){
this.name=name;
}
public void cry(){
System.out.println("哇哇");
}
public void show(){
System.out.println();
}
}
解决方案
一个代码文件定义一个类,类名和文件名对应。
解决方案二:
以下代码,文件名为 静态.java
public class 静态 {
public static void main(String[] args) {
person p=new person();
p.show();
person p1=new person("xixi");
p1.show();
}
}
class person{
private String name;
person(){
name="xx";
}
person(String name){
this.name=name;
}
public void show(){
System.out.println("name"+name);
}
}
解决方案三:
你这程序没有静态变量,哪来的静态代码段?
解决方案四:
研究这个http://www.cnblogs.com/panjun-Donet/archive/2010/08/10/1796209.html
解决方案五:
public class 静态 {
public static void main(String[] args) {
person p=new person();
p.show();
person p1=new person("xixi");
p1.show();
}
}
class person{ ** 还是person错误**
private String name;
person(){
name="xx";
}
person(String name){
this.name=name;
}
public void show(){
System.out.println("name"+name);
}
}
解决方案六:
静态代码块是这样的形式
public class Person {
private String name;
static {
name="张三";
}
public Person(){
}
}
静态代码块会在 构造函数之前执行 并且只执行一次