为什么创建的类和类名不一样
1. 为什么java类中,函数名必须与类名一致举例 谢了
函数名是任意的,与“类名”一直的是“构造函数”的名称。
因为在Java中我们见过最多的一句话就是:Test t=new Test();
在这里面 Test() 就是那个构造函数,我们通过这样的方法才能构造出一个Test类型的实例。
2. C#程序理解,怎么理解构造函数,构造函数名字为什么和类名是一样的呢
构造函数是面向对象的编程中出现的一种方法,它是每个类都会有的方法,作用是构造及初始化对象。为了程序编译时能很好地辨识这个必须的“构造函数”。那这个构造函数的名字最好就有一定的规定。现在规定了构造函数名字和类名一致,编译时就知道哪些是构造函数, 实例化对象时就会调用合适的构造函数进行类的实例化。
构造函数 是一种特殊的方法 主要用来在创建对象时对对象进行初始化。即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别地,一个类可以有多个构造函数 可根据其参数个数的不同或参数类型的不同来区分它们,就是构造函数的重载。
构造函数是类自己在对象刚刚创建时候自己调用的,一般不允许用户自己显示调用构造函数。用户只要将构造函数写好,类在实例化对象的时候自动调用合适的构造函数对对象进行初始化(若有多个构造函数,系统会根据构造函数的形参来进行选择)。
你可能会看到有些类没有构造函数,这时候编译器会自动生成一个形参为空的函数体为空的构造函数给该类。总之,构造函数是必须的。
你说的不懂的地方,其实就是在实例化kkk这个对象的时候,即kkk刚创建的时候,系统对自动调用一次Program类的构造函数。这就是构造函数唯一一次调用的地方。用户是不能显示调用构造函数的。
这和C语言是有区别的,构造函数用于对象的初始化,这样可以使对象的封装性更好。
3. Java中,进行类的实例化时,为什么对象所属的类名称可以与new出来的构造方法名不同,对象名、与其
举个例子:
ClassA obj = new ClassB(xxx); // xxx指可能的ClassB的构造函数参数
当ClassA与ClassB不同,有这样几种情形:
ClassA是ClassB的基类,即ClassB定义为 : class ClassB extands ClassA {...}
ClassA是ClassB实现的一个interface,即ClassB定义为: class ClassB implements ClassA {...}
不论哪种情形,对象obj都是调用ClassB的构造函数生成的。对象obj是存在于内存里的一块连续区域。程序员可以选择用ClassA来引用它,也可以用ClassB来引用它:
ClassA refA = (ClassA) obj;
ClassB refB = (ClassB) obj;
这都是合法的。
4. java 创建对象类名的与对象名不同的区别
这是java的多态,new A表示当前对象,new C表示B和C有继承关系,一个是父类,一个是子类,子类可以调用父类方法,而不用自己重新定义
5. 我是手动创建的数据库表,在实体类中,类名跟表明不一致,怎样在Annotation中映射表明跟类名呢谢谢
@Table(name="表名") 不加@Table 表示数据库中的表和实体类类名相同
6. JAVA构造函数的名字为什么跟类名一样
当然必须一样,而且还不能带返回类型,否则就成了一般的方法了。不能指定为static。
7. 为什么Java的new名字跟类的名字不一样啊
SimpleFrameTest是这个测试程序的类名。
SimpleFrame是一个继承于JFrame类的类名。
JFrame.EXIT_ON_CLOSE 这一句并没有引用SimpleFrame的属性,而是引用了JFrame类的静态属性,这个属性的本质就是一个整数,用于设置窗口关闭的动作。
8. Java 创建对象时 对象名前加类名和不加类名的区别
①A a = new A()这个A a 是定义然后赋值
②后面 a = new A()由于前面已经定义所以就不用加A了,又创建了一个新的对象赋给了A
9. 类名和类类型 是一个意思么.
这玩意儿比较抽象。类名就是创建的class的名字,如果把创建的class当作一个对象来看的话,
创建的class只是类类型的一个实例。
10. JAVA中接口的创建为什么类型与对象名不同
类型好比是你的性别,对象名好比是你的名字。
你的性别与你的名字不同,所以接口的创建类型与对象名也不同。