class Employee
{
private String name;
private int age; public Employee(String name1,int age1)
{
name = name1;
age = age1;
}
}class Worker extends Employee
{
private char category; //级别
private boolean jintie; //津贴 public Worker(String name1,int age1,char category1,boolean jintie1)
{
super(name1,age1);
category = category1;
jintie = jintie1;
}
}class Officer extends Employee
{
private boolean nianzhongjiang;
private boolean chetie ;
public Officer(String name2,int age1,boolean nianzhongjiang1,boolean chetie1)
{
super(name2,age1);
nianzhongjiang = nianzhongjiang1;
chetie = chetie1;
}
}public class Demo12
{
public static void main(String[] args)
{
Worker worker = new Worker("约翰",24,'B',false);
System.out.println("工人信息:");
System.out.println("名字:"+worker.name);
System.out.println("年龄:"+worker.age);
System.out.println("级别:"+worker.category);
if(worker.jintie)
System.out.println("有津贴");
else
System.out.println("无津贴"); Officer officer = new Officer("John",22,true,true);
System.out.println("办公室信息:");
System.out.println("姓名:"+officer.name);
System.out.println("年龄:"+officer.age);
if(officer.nianzhongjiang)
System.out.println("有年终奖");
else
System.out.println("没有");
if(officer.chetie)
System.out.println("有");
else
System.out.println("无");
}
}我把变量设为private 怎么抱错啊!按道理说将变量设为私有,通过公有的构造函数可以访问啊!
{
private String name;
private int age; public Employee(String name1,int age1)
{
name = name1;
age = age1;
}
}class Worker extends Employee
{
private char category; //级别
private boolean jintie; //津贴 public Worker(String name1,int age1,char category1,boolean jintie1)
{
super(name1,age1);
category = category1;
jintie = jintie1;
}
}class Officer extends Employee
{
private boolean nianzhongjiang;
private boolean chetie ;
public Officer(String name2,int age1,boolean nianzhongjiang1,boolean chetie1)
{
super(name2,age1);
nianzhongjiang = nianzhongjiang1;
chetie = chetie1;
}
}public class Demo12
{
public static void main(String[] args)
{
Worker worker = new Worker("约翰",24,'B',false);
System.out.println("工人信息:");
System.out.println("名字:"+worker.name);
System.out.println("年龄:"+worker.age);
System.out.println("级别:"+worker.category);
if(worker.jintie)
System.out.println("有津贴");
else
System.out.println("无津贴"); Officer officer = new Officer("John",22,true,true);
System.out.println("办公室信息:");
System.out.println("姓名:"+officer.name);
System.out.println("年龄:"+officer.age);
if(officer.nianzhongjiang)
System.out.println("有年终奖");
else
System.out.println("没有");
if(officer.chetie)
System.out.println("有");
else
System.out.println("无");
}
}我把变量设为private 怎么抱错啊!按道理说将变量设为私有,通过公有的构造函数可以访问啊!
System.out.println("名字:"+worker.name);大哥,是这样的。首先一个private int a 他属于当前类。
如果你用new 出来一个对像去访问a这个变量是不行了。如果可以访问那就不是你public 出来一个属性吗?
{
private String name;
private int age; public Employee(String name1,int age1)
{
name = name1;
age = age1;
System.out.println("名字:"+name);
System.out.println("年龄:"+age);
}
} class Worker extends Employee
{
private char category; //级别
private boolean jintie; //津贴 public Worker(String name1,int age1,char category1,boolean jintie1)
{
super(name1,age1);
category = category1;
jintie = jintie1;
}
} class Officer extends Employee
{
private boolean nianzhongjiang;
private boolean chetie ;
public Officer(String name2,int age1,boolean nianzhongjiang1,boolean chetie1)
{
super(name2,age1);
nianzhongjiang = nianzhongjiang1;
chetie = chetie1;
}
} public class Demo12
{
public static void main(String[] args)
{
Worker worker = new Worker("约翰22",24,'B',false);
System.out.println("工人信息:");
System.out.println("级别:"+worker.category);
if(worker.jintie)
System.out.println("有津贴");
else
System.out.println("无津贴"); Officer officer = new Officer("John",22,true,true);
System.out.println("办公室信息:");
if(officer.nianzhongjiang)
System.out.println("有年终奖");
else
System.out.println("没有");
if(officer.chetie)
System.out.println("有");
else
System.out.println("无");
}
}
我如果把它这样改了,怎么还抱错啊!不是worker类的对象难道不能访问本类的私有成员吗?Demo12.java:48: category 可以在 Worker 中访问 private
System.out.println("级别:"+worker.category);
Demo12.java:49: jintie 可以在 Worker 中访问 private
System.out.println("名字:"+worker.jintie); Demo12.java:57: nianzhongjiang 可以在 Officer 中访问 private
System.out.println("名字:"+officer.nianzhongjiang); Demo12.java:61: chetie 可以在 Officer 中访问 private
System.out.println("名字:"+officer.chetie);
www.mysupersoft.com/allguides/rmvb_to_avi_converter