导航:首页 > 编程语言 > java变量实例化

java变量实例化

发布时间:2023-01-22 20:33:59

A. java知多少(36)内部类及其实例化

在 Java 中,允许在一个类(或方法、语句块)的内部定义另一个类,称为内部类(Inner Class),有时也称为嵌套类(Nested Class)。

内部类和外层封装它的类之间存在逻辑上的所属关系,一般只用在定义它的类或语句块之内,实现一些没有通用意义的功能逻辑,在外部引用它时必须给出完整的名称。

使用内部类的主要原因有:
内部类可以访问外部类中的数据,包括私有的数据。
内部类可以对同一个包中的其他类隐藏起来。
当想要定义一个回调函数且不想编写大量代码时,使用匿名(anonymous)内部类比较便捷。
减少类的命名冲突。

请看下面的例子:

1 public class Outer {
2 private int size;
3 public class Inner {
4 private int counter = 10;
5 public void doStuff() {
6 size++;
7 }
8 }
9 public static void main(String args[]) {
10 Outer outer = new Outer();
11 Inner inner = outer.new Inner();
12 inner.doStuff();
13 System.out.println(outer.size);
14 System.out.println(inner.counter);
15 // 编译错误,外部类不能访问内部类的变量
16 System.out.println(counter);
17 }
18 }

这段代码定义了一个外部类 Outer,它包含了一个内部类 Inner。将错误语句注释掉,编译,会生成两个 .class 文件:Outer.class 和 Outer$Inner.class。也就是说,内部类会被编译成独立的字节码文件。

内部类是一种编译器现象,与虚拟机无关。编译器将会把内部类翻译成用 $ 符号分隔外部类名与内部类名的常规类文件,而虚拟机则对此一无所知。

注意:必须先有外部类的对象才能生成内部类的对象,因为内部类需要访问外部类中的成员变量,成员变量必须实例化才有意义。

内部类是 Java 1.1 的新增特性,有些程序员认为这是一个值得称赞的进步,但是内部类的语法很复杂,严重破坏了良好的代码结构, 违背了Java要比C++更加简单的设计理念。

内部类看似增加了—些优美有趣,实属没必要的特性,这是不是也让Java开始走上了许多语言饱受折磨的毁灭性道路呢?本教程并不打算就这个问题给予一个肯定的答案。

B. Java中什么叫实例化

就是从一个模版中得出一个实际的例子。比如:从一张汽车设计图,设计出一辆真正的汽车。这个就叫做实例化。我们可以理解这个设计图是一个类,一个模板。你new了之后的那个就是真正的实例了。

对象是虚无的,不实际的,抽象的(比如汽车设计图,里面的汽车不能真的开);
实例是实实在在的,个体的,具体的(根据设计图可以设计出不同颜色的汽车,而这个汽车是真正存在的,可以拿来开动的)。

C. Java实例化的几种方式

1、用new语句创建对象复,这是最常见制的创建对象的方法。
2、通过工厂方法返回对象,如:String str = String.valueOf(23);
3、运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。如:Object obj = Class.forName("java.lang.Object").newInstance();
4、调用对象的clone()方法。
5、通过I/O流(包括反序列化),如运用反序列化手段,调用java.io.ObjectInputStream对象的 readObject()方法。

D. 如何理解java中的实例化

Java中的实例化,其实理解起来也挺简单,其实就是创建对象,例如:Car car = new Car();
通常把这条语句的动作称之为创建一个对象,也就是所谓的实例化过程。
在这句话中,Car是一个"汽车类",这个"类"可以理解成是一个"工厂里的模具",然后我们可以根据这个"模具"来创造出"一个具体的产品",这个"具体的产品",也就是所谓的"实例化对象"。所谓的实例化,就是根据"类",来创造出一个具体的对象。

E. 刚刚学习java 菜鸟一只 什么是实例化对象 什么是实例化变量 谁能举例子说明下

实例化对象就有,实例化变量确实没听过,是初始化变量么?
例如有一个类
class student{
int num;

String name;

public student(int num,String name){ //构造器不懂的话去看一下
int num;

String name;

}

public static void main(String args[]){

student stu=new student(100,"张三");//new 一个对象的过程就可以看成是一个实例化对象的过程

}

}

F. JAVA中栈的变量怎么实例化

- -!
Exception in thread "main" java.lang.NullPointerException这个错误的意思上说找不到MAIN方法。因为程序的入口是MAIN方法,就是说你要是没有MAIN方法程序就不知道从哪开始运行。你需要写个MAIN方法调用其他的方法。

G. JAVA实例化是什么意思

简单说,就是产生一个CLASS的对象,把抽象的东西具体话,把泛指的东西变成一个个例

H. java中的实例化和引用变量有什么区别

区别如下:
实例化就是另外分配一个空间来存储要实例化的类,引用变量没有另外回创建一个空间,只是答多了一个变量指向那个空间而已,比如,
String str1 = "aaaa"; //实例化一个变量str1,创建了一个空间来存放"aaaa".
String str2 = str1; //引用变量, 把str2也指向存放"aaaa"的那个空间。
这样就可以用str1或者str2对"aaaa"的内容进行改变,不过String 类型的内容不能改变,改变了内容只是 另外创建一个空间存放新的内容,然后把变量名指向新的空间而已。

I. 请问java中实例化和初始化区别是什么

初始化一次,实例化多次,你这么记就没问题了!
比方一个类,第一次被使用的时候,静态的资源,包括变量,方法,静态代码块,会进行初始化。
实在记不住,这么想好了,第一次使用,才叫初始化,对吧,那么初始化最先加载的,当然是静态的资源。
比如,一个类,有静态变量,static int a=1;这个静态变量,就会被初始化,当你第二次调用该类的时候,不必重新给a开辟内存,直接调用已有的。
而实例化,则是一个类new一次,就产生一个实例,比方一个类A。
A a1=new A();
A a2=new A();
a1和a2,就叫做A的实例。创建A对象实例的过程,就叫做实例化。

J. java为什么要实例化实例化的对象和引用用变量在用法上有什么区别

因为只有实例化之后,才能将这个对象放到内存中,然后才能在规定的范围内来调用。
当然,这不包括静态对象,静态对象是可以直接调用的。
再有,每次实例化其实都是一个新建的过程
例如Object a = new Object();这句话,你可以写无数次,只要每次起到名字不同,就会在内存中创建无数个Object对象,这样在调用其中任意一个的时候互不干扰。

其实简单的说,对象的引用和变量引用差不多,都是内存地址的引用,如果你是新手可以先认为是一样的,以后学的多了,你会更加理解二者的区别

阅读全文

与java变量实例化相关的资料

热点内容
代码如何快速做金字塔数据 浏览:775
文件异地同步软件 浏览:383
微信网页版自动登录 浏览:370
excel如何分开男女数据 浏览:883
帝豪gl怎么打开u盘文件夹在哪里 浏览:477
苹果皮能用流量吗 浏览:548
电脑宽带连接共享wifi密码 浏览:655
最新微粒贷app官方下载 浏览:923
win10电脑怎么休眠不断网 浏览:530
如何查到网站的服务器 浏览:225
编程怎么确定一个数的位数 浏览:362
如何安装ae脚本文件夹 浏览:914
商品验伪用什么APP查 浏览:350
请问大数据与会计专业做什么的 浏览:77
如何修改数据上年结转 浏览:6
win7一直配置文件重启 浏览:124
佳能ir2525i网络扫描 浏览:283
win10指纹无法识别 浏览:646
jsp中怎么引入js文件 浏览:925
文件名构成部分 浏览:484

友情链接