主类main方法里面可以有不带public的子类 但是不能有接口

1.//还可以写在main外面
2. interface product{
3.            public void getName();
4.            }
5.     class productA implements product {
6.            @Override
7.            public void getName() {
8.                // TODO Auto-generated method stub
9.                System.out.println("++++A++++");
10.            }
11.
12.        }
13.         class productB implements product{
14.            @Override
15.            public void getName() {
16.                // TODO Auto-generated method stub
17.            System.out.println("++++++B++++++");
18.            }
19.        }
20.         class createProduct{
21.            public product create(String type) {
22.                if("A".equals(type))
23.                    return new productA();
24.                else if("B".equals(type))
25.                    return new productB();
26.                else
27.                return null;
28.            }
29.        }
30.public class factory {
31.    public static void main(String args[]){
32.
33.        createProduct create = new createProduct();
34.        create.create("A").getName();
35.        create.create("B").getName();
36.
37.    }
38.
39.
40.}   

主类main方法里面可以有不带public的子类  但是不能有接口

接口写在主类的外面  但是不能带public   interface product{

1.            public void getName();
2.            }
3.
4.public class factory {
5.    public static void main(String args[]){
6.         class productA implements product {
7.                @Override
8.                public void getName() {
9.                    // TODO Auto-generated method stub
10.                    System.out.println("++++A++++");
11.                }
12.
13.            }
14.             class productB implements product{
15.                @Override
16.                public void getName() {
17.                    // TODO Auto-generated method stub
18.                System.out.println("++++++B++++++");
19.                }
20.            }
21.             class createProduct{
22.                public product create(String type) {
23.                    if("A".equals(type))
24.                        return new productA();
25.                    else if("B".equals(type))
26.                        return new productB();
27.                    else
28.                    return null;
29.                }
30.            }
31.        createProduct create = new createProduct();
32.        create.create("A").getName();
33.        create.create("B").getName();
34.
35.    }
36.
37.
38.}
时间: 2024-10-30 00:26:25

主类main方法里面可以有不带public的子类 但是不能有接口的相关文章

【细说Java】揭开Java的main方法神秘的面纱(转)

大家都知道,main方法是Java应用程序的入口,其定义格式为: public static void main(String[] args) 可是为什么要这么定义呢?不这样定义可以么?main方法可以继承么?可以重载么?可以被其他方法调用么? 1. main方法为什么这么定义? (1) 因为main方法在启动时是通过Java的虚拟机,也就是JVM来调用的,并且没有通过对象的引用来调用,所以main方法是public和static的.而void是因为,main方法在退出时,没有给退出代码,而是在

多线程测试类,运行找不到main方法,求大神洞悉问题

问题描述 多线程测试类,运行找不到main方法,求大神洞悉问题 public class hello { static class hello1 extends Thread { public hello1() { } public hello1(String name) { this.name = name; } public void run() { for (int i = 0; i < 5; i++) { System.out.println(name + "运行 " +

反射类的main方法-关于反射类的方法参数问题

问题描述 关于反射类的方法参数问题 1. //public Class[] run(String strString[] i) @Test public void test3() throws Exception{ Person p=new Person(); Class clazz=Class.forName(""cn.itcast.reflect.Person""); Method method=clazz.getMethod(""run&q

java web-Javaweb在Java类的main方法中无法通过Proxool连接数据库

问题描述 Javaweb在Java类的main方法中无法通过Proxool连接数据库 Javaweb在Java类的main方法中无法通过Proxool连接数据库,报SQLException,找不到驱动,同样的代码启动tomcat后在服务器中能运行??????? 解决方案 有两个可能,一个是jar包没有引入全:还有一个就是配置文件的编码方式,把配置文件打开看看有没有乱码

数据-Android Main方法里面有个变量,在工具类里面怎么调用呢

问题描述 Android Main方法里面有个变量,在工具类里面怎么调用呢 Android Main方法里面有个变量,在工具类里面怎么调用呢. new MainActivity().uid 这样调用的话会不会对数据有影响? uid 是public.除了new MainActivity 还可以怎么调 解决方案 做成public static的,这样通过 MainActivity.xxx就可以访问 解决方案二: Android在Adapter里面调用Activity的方法/变量Android在Ada

JAVA进阶之旅(二)——认识Class类,反射的概念,Constructor,Field,Method,反射Main方法,数组的反射和实践

JAVA进阶之旅(二)--认识Class类,反射的概念,Constructor,Field,Method,反射Main方法,数组的反射和实践 我们继续聊JAVA,这次比较有意思,那就是反射了 一.认识Class类 想要反射,你就必须要了解一个类--Class,我们知道,java程序中的各个java类都属于同一事物,我们通常用Classliability描述对吧,反射这个概念从JDK1.2就出来了,历史算是比较悠久了,这个Class可不是关键字哦,这个是一个类,他代表的是一类事物: 我们归根结底就

主类-JAVA主语句中不能放循环或条件语句,那如何在其他方法中使用这个方法中定义的整型

问题描述 JAVA主语句中不能放循环或条件语句,那如何在其他方法中使用这个方法中定义的整型 public void tian(){ int k=0; } public void tian2(){ for(;k<5;k++){ break; } } 这样? 解决方案 不太明白楼主的意思 定义在方法内的变量是局部变量,其他方法是找不到的 不过你可以在调用方法的时候作为参数把这个变量的值传过去 解决方案二: 这什么问题-- 局部变量的作用域就在本域内,怎么作用在外部? 难道JAVA出新特性了? 解决方

用主类合并线程

在上面的例子中,我们看到线程类(Thread)与程序的主类(Main)是分隔开的.这样做非常合理,而且易于理解.然而,还有另一种方式也是经常要用到的.尽管它不十分明确,但一般都要更简洁一些(这也解释了它为什么十分流行).通过将主程序类变成一个线程,这种形式可将主程序类与线程类合并到一起.由于对一个GUI程序来说,主程序类必须从Frame或Applet继承,所以必须用一个接口加入额外的功能.这个接口叫作Runnable,其中包含了与Thread一致的基本方法.事实上,Thread也实现了Runna

对Object类中方法的深入理解

看一下API中关于Object的介绍: 类 Object 是类层次结构的根类.每个类都使用 Object 作为超类. 所有对象(包括数组)都实现这个类的方法. 那么Object中到底有哪些方法,各自有什么应用呢? 这个问题也经常出现在面试中,如果平时没有关注,可能很难回答好,这里简单整理一下. 首先看一下java.lang.Object的源码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 2