标题:内部类 问题
只看楼主
yangte
Rank: 1
等 级:新手上路
帖 子:163
专家分:0
注 册:2006-10-2
 问题点数:0 回复次数:16 
内部类 问题
大家好,
我在学内部类,我看的那些教程看不懂,
根本不知道内部类是什么东西。
请问
内部类要怎样学啊,能举一些的例吗?谢谢。。。。

[此贴子已经被作者于2006-10-18 23:33:20编辑过]

搜索更多相关主题的帖子: 部类 
2006-10-18 14:04
exit
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2006-10-18
得分:0 

内部类我还没接触过
请问是不是在一个类中声名另一个类?

2006-10-18 14:25
termite037
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-5-30
得分:0 
就是类中有类

2006-10-18 20:40
termite037
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-5-30
得分:0 
public class Group1
{
int count; //外部类的成员变量
public class Student //声明内部类
{
String name; //内部类的成员变量
public void output() //内部类的成员方法
{
System.out.println(this.name +" ");
}
}
}

2006-10-18 20:50
termite037
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-5-30
得分:0 
public class Group2
{
private int count; //外部类的私有成员变量
public class Student //声明内部类
{
String name;
public Student(String n1)
{
name = n1;
count++; //存取其外部类的成员变量
}
public void output()
{
System.out.print(this.name +" ");
}
}
public void output() //外部类的实例成员方法
{
Student s1 = new Student("李明"); //建立内部类对象s1
s1.output(); //通过s1调用内部类的成员方法
System.out.println(" count = "+this.count);
}
public static void main (String args[])
{
Group2 g2 = new Group2();
g2.output();
}
}

2006-10-18 20:51
termite037
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-5-30
得分:0 
public class Group3
{
private static int count; //静态变量Group3.count统计班级数量
private String name; //实例变量Group3.name 表示班级名称
public class Student
{
private int count; //实例变量Student.count表示学号
private String name; //实例变量Student.name表示学生姓名
public void output(int count)
{
count++; //存取方法的参数,局部变量
this.count++; //通过对象存取Student.count
Group3.count++; //通过类名存取Group3.count
Group3.this.count++; //通过对象名存取Group3.count
System.out.println(count+" "+this.count+" "+
Group3.count+" "+Group3.this.count++);
}
}
public Student aStu() //返回内部类Student的一个对象
{
return new Student();
}
public static void main (String args[])
{
Group3 g3 = new Group3();
g3.count=10; //Group3.count
Group3.Student s1 = g3.aStu(); //在外部创建内部类的对象
//完整的内部类标识Group3.Student
s1.output(5);
}
}

2006-10-18 20:51
termite037
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-5-30
得分:0 

public class Group4
{
public abstract class Student_abstract //抽象内部类
{
int count;
String name;
public abstract void output(); //抽象方法
}
public class Student extends Student_abstract //继承抽象内部类
{
public Student(String n1)
{
name = n1;
count++; //Student.count
}
public void output() //实现抽象方法
{
System.out.println(this.name +" count="+this.count);
}
}
public Group4()
{
Student s1 = new Student("A");
s1.output();
Student s2 = new Student("B");
s2.output();
}
public static void main (String args[])
{
Group4 g4 = new Group4();
}
}


2006-10-18 20:51
termite037
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-5-30
得分:0 

public class Group5
{
public interface Student_info //内部接口
{
public void output();
}
public class Student implements Student_info //内部类实现内部接口
{
int count;
String name;
public Student(String n1)
{
name = n1;
count++;
}
public void output() //实现接口方法
{
System.out.println(this.name +" count="+this.count);
}
}
public Group5(String name1[])
{
Student s1;
int i=0;
while (i<name1.length)
{
s1 = new Student(name1[i]);
s1.output();
i++;
}
}
public static void main (String args[])
{
Group5 g5;
if (args.length>0)
g5 = new Group5(args);
}
}


2006-10-18 20:52
termite037
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-5-30
得分:0 
public class Group6
{
public static class Student //定义静态公用内部类
{
static int count; //静态内部类中的静态变量
String name;
int number; //序号
public Student(String n1) //静态内部类的构造方法
{
name = n1;
count++;
number = count; //序号自动增加
}
public void output()
{
System.out.println(this.name +" number="+this.number);
}
}
public static void main (String args[])
{
Group6.Student s1 = new Group6.Student("A");
s1.output();
Group6.Student s2 = new Group6.Student("B");
s2.output();
}
}

2006-10-18 20:52
termite037
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-5-30
得分:0 
平时写的一些东西 我认为还可以简单的了解内部类

2006-10-18 20:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-97108-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.344155 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved