在java定义内部类

来源:百度知道 编辑:UC知道 时间:2024/06/02 08:57:09
我想在一个类内部再定义一个类,这个类可以在方法中定义吗?
比如说:
public class A {
void a{ class B{...} }
public static void main(String[] args {
...
}
这样可以吗?
又比如说:
public class A {
public class B {
...}
public static void main(String[] args {
...
}
这样可以吗?
或者:
public class A {
void a {
Protected class B {
...}
}
public static void main(String[] args {
...
}
这样可以吗?
定义的时候可以用哪些修饰符,用用public吗?
能在public static void main(String[] args {...}中定义吗?
各位前辈,小弟是个初学者,顺便问一下,在java中,如何执行一个可执行文件,
就像在VB中用shell去调用另一个可执行文件.java中有没有这样的功能,如何有,
应该怎么做?
比如说,我现在硬盘的D盘中有一个名为1.html网页文件,如何我才能在java中用IE把它打开呢?

public class A {
void a{ class B{...} }
public static void main(String[] args {
...
}

public class A {
public class B {
...}
public static void main(String[] args {
...
}
这些都是可以的

public class A {
void a {
Protected class B {
...}
}
public static void main(String[] args {
...
}
这一个不可以。
对于内部类,就想类的属性一样,可以用 public private protected 修饰,或者什么都不加,但是如果这个内部类在类的方法里面,public private protected都不能使用。就想在方法中定义变量不能加这三个修饰符一样,方法中的内部类也不能使用设三个修饰符,在方法中定义一个内部类,一般是为了隐藏某种实现细节,这个方法中的内部类是不能在这个方法之外用new 关键字来创建的,但是可以作为这个方法的返回参数。
关于你补充的问题,我还没使用过。我觉得Java作为一门高级语言,应该有这方面的设计,我没有用过。

举例说明,这里的X就是一个内部类,只对类A可见,其他类都不可见;好处,隐藏其他类知道的操作,也即封装性,但内部类对象可以访问创建它的外部类对象的内容,甚至包括私有变量, 也即X可以访问到A中的类变量比如 num。

public class A {
private int num;
class X
{
}
}

内部类有多种
class A
{
class B{
}
}

class A{
public (){
clas