创建对象的知识点

1.Java(1)定义一个人类Person:(知识点对象创建和使用) 1)定

public class Person {

public String name;

public double hight;

public double weight;

public Person(String name, double hight, double weight) {

super();

this.name = name;

this.hight = hight;

this.weight = weight;

}

public Person() {

super();

}

public static void sayHello(Person person1,Person person2){

System.out.println(person1.name+”对”+person2.name+”say hello”);

}

public static void main(String[] args) {

Person p1=new Person(“zhangsan”,33,1.73);

Person p2=new Person(“lishi”,44,1.74);

sayHello(p1,p2);

}

}

2.Java相关基础知识 1、成员方法定义的格式 2、创建对象的格式 3、对

1. 成员方法:

普通方法: 修饰符+返回值类型+方法名+(参数列表){}

构造方法 修饰符+类名+(参数列表){}

b.创建对象的格式:

无参的构造方法 类名 对象名 = new 类名 ();

有参的构造方法 类名 对象名 = new 类名 (参数列表);

c.对象引用成员方法的格式:

无参的方法 对象名.方法名();

有参的方法 对象名.方法名(传入相应的参数);

如果是静态的方法(static修饰的方法)则直接通过 类名.方法名();直接调用

3.java中对象的理解:

可以说a,b,c三个变量就是三个对象

创建对象我们最普遍的方法就是使用new关键字。例:String str = new String();

而对于String有自己特有的创建对象的方式,就是引号内包含文本。例:String str = “abc”;

这里我再补充点知识,希望对楼主有帮助:

在JAVA虚拟机(JVM)中存在着一个字符串池,其中保存着很多String对象,并且可以被共享使用,因此它提高了效率。由于String类是final的,它的值一经创建就不可改变,因此我们不用担心String对象共享而带来程序的混乱。字符串池由String类维护,我们可以调用intern()方法来访问字符串池。

String str=”abc”;,这行代码被执行的时候,JAVA虚拟机首先在字符串池中查找是否已经存在了值为”abc”的这么一个对象,它的判断依据是String类equals(Object obj)方法的返回值。如果有,则不再创建新的对象,直接返回已存在对象的引用;如果没有,则先创建这个对象,然后把它加入到字符串池中,再将它的引用返回。

所以说String str1 = “abc”; String str2 = “abc”;

这两行代码实际上只创建了一个String对象。这是我面试时的一道题。

楼主可以顺着这个知识点展开学习String类。如果有什么疑问可以再交流交流。

以上是我的回答,希望大家互相学习~

4.通过反射创建的对象,应该怎样去释放

首先总结下,创建对象的3中方式:

使用new的方式,最为常见。

使用对象的clone()方法。

使用反射机制的newInstance()方法。

举个简单的例子:

package com.java;public class Demo{ /** * 通过两种方式创建对象,以做对比。 * @param args * @throws * @throws * @throws */ public static void main(String[] args) throws , , { // 我们认为这种方方式,Demo类和Basic类是耦合的, // 编译Demo类时,Basic类必须存在,拓展性不强。 Basic basic0 = new Basic(); // 很明显这种方式,在编译Demo类时,并不需要 // Basic类的存在,只要在运行Demo类时,存在即可, // 所以我们认为Demo类和Basic是松耦合的, // 为后期的拓展提供了空间,好处显而易见。这么说,如果没有 // 反射机制,就没有struts、spring、hibernate等等这些web框架。 Class clazz = Class.forName(“com.java.Basic”); Basic basic1 = (Basic) clazz.newInstance(); }}class Basic{}好好体会下,反射带来的便利。

5.java新建对象的问题

在有static、final、extends、implements修饰的类(包括属性和方法)的对象创建过程。

因此约定下述引用声明和对象创建:匿名对象:没有声明引用的对象,一般是Has-a关系中的类创建的,直接在方法中赋值。Class A = new B(参数表);引用的声明都是在对象创建之前的(如果你不是创建的匿名对象的话)。

1、通常情况下(在没有上述任何修饰词的情况下,只包含属性和方法的一般类)对象创建过程如下:给对象分配内存空间(准确的说是属性),并且将属性值置为默认值0或者null或者false实例变量初始化,将定义类时直接赋给属性的字面值调用类的构造方法,将构造方法中的参数传给属性(如果有参数的话)2、多态的创建过程extend修饰:先声明父类引用在创建子类对象给子类属性分配内存空间并将属性值置为默认值递归构造父类对象:1)给父类属性分配内存空间(包括私有属性),并将属性置为默认值,如果父类还有父类,则此步完成后再次递归构造父类对象;2)父类实例变量初始化;3)调用父类的构造方法完成对象的初始化子类实例变量初始化调用子类的构造方法完成全部对象的初始化3、初始化代码块给对象分配内存空间调用初始化代码块(在每一次创建对象时都会调用一次,其内部的变量属于局部变量)实例变量初始化调用构造方法完成对象的创建调用本类初始化代码块在递归构造父类对象以后4、静态初始化代码块和被static修饰的属性在类加载时对象创建之前调用静态初始化代码块静态修饰的部分从父类开始执行父类的静态初始化代码块->父类静态属性->子类静态初始化代码块->子类静态属性……静态方法在对象创建过程中不分配内存空间创建对象5、final修饰final修饰的属性在实例变量初始化(1.2)时完成赋值,如果final修饰的属性赋值是在定义时给出而不是在构造方法中给出的。6、包含属性为类的类属性为其他类时,它和本类其他的属性没有任何差别,如果在调用有参构造时不使用匿名对象方式赋值的话,需先行用此属性类创建一个对象,并给出引用匿名对象方式赋值:在创建对象时,先行创建属性的类的对象,其创建对象和其他对象的创建过程是一致的7、构造方法带参数的创建过程就是调用构造方法,不过带参数的构造方法一般都是给属性赋值,有时会在这里给final属性赋值。

8、implements修饰implements是实现接口的关键字,也是多态的体现。接口的属性都是公开静态常量,因此他的属性都是在类加载的时候完成的初始化。

接口没有构造方法。总结:因此整个创建对象的过程可以总结如此下:所有接口属性的空间分配和赋值递归调用静态初始化的成分,父类的静态初始化代码块,然后静态属性的空间分配和初始化子类的静态初始化代码块,静态属性的空间分配和初始化调用的构造方法中属性为类,需要创建匿名对象的,先行创建一个对象,然后再创建本类对象利用本类对象的创建过程,给对象分配内存空间,并将属性值设为默认值递归构造父类对象调用本类的初始化代码块实例变量初始化,final修饰的属性是直接赋值的话,在此步就会完成给属性的赋值,如果是在构造方法中给出则跳过初始化这一步调用本类的构造方法,将构造方法的参数传给属性,完成对象的创建。

6.急求CAD等级考试试题(有答案)

一、单项选择题(共15题,每题1分) 1、设置AUTOCAD图形边界的命令是 。

A、GRID B、SNAP和GRID C、LIMITS D、OPTIONS 知识点:1.12、在“创建图纸集”向导中,图纸集可以 创建。A.从图纸集样例 B.从现有图形文件 C.从图形样板文件 D.A和B 知识点:1.13、将绘制的图形保存为样板文件的文件名为 。

A *.dwg B *.dxf C *.dwt D *.dwf 知识点:1.34、AUTOCAD的坐标体系包括世界坐标系和 。A、绝对坐标系 B、平面坐标系 C、相对坐标系 D、用户坐标系 知识点:2.15、若图面已有一点A (2,2) ,要输入另一点B (4,4) ,以下方法不正确的是 。

A、4,4 B、@2,2 C、@4,4 D、@2<45 知识点:2.26、移动圆对象,使其圆心移动到直线中点,需要应用 。A、正交 B、捕捉 C、栅格 D、对象捕捉 知识点:2.37、在输入一条长度为200的直线时,命令行出现了创建零长度的提示信息,并在某点绘制了一条长度为0的直线,这种情 况可能造成的原因是 。

A、坐标数据输入的优先级设置为“键盘输入” B、坐标数据输入的优先级设置为“对象捕捉” C、坐标数据输入的优先级设置为“键盘输入,脚本例外” D、“Windows标准加速键”被关闭 知识点:3.48、在AutoCAD 2008中,用CIRCLE命令在一个三角形中画一内接圆,在提示3P/2P/TTR下,应采用的最佳 方式是 。A、2P方式 B、TTR方式 C、3P方式 D、先手工计算好圆心坐标、半径、用圆心、半径方式 知识点:4.29、在AutoCAD 2008中绘制正多边形时,下列方式错误的是 。

A、内接正多边形 B、外切正多边形 C、确定边长方式 D、确定圆心、正多边形点的方式 知识点:4.310、下列编辑工具中,不能实现“改变位置”功能的是 。A、移动 B、比例 C、旋转 D、阵列 知识点:5.411、在修改编辑时,只以采用交叉多边形窗口选取的编辑命令是 。

A、拉长 B、延伸 C、比例 D、拉伸 知识点:5.512、拉伸命令“stretch”拉伸对象时,不能 。A、把圆拉伸为椭圆 B、把正方形拉伸成长方形 C、移动对象特殊点 D、整体移动对象 知识点:5.513、point点命令不可以 。

A、绘制单点或多点 B、定距等分直线、圆弧或曲线 C、等分角 D、定数等分直线,圆弧或曲线 知识点:6.114、在AutoCAD中可以给图层定义的特性不包括 。A、颜色 B、线宽 C、打印/不打印 D、透明/不透明 知识点:9.315、单行文字的命令是 。

A、MT B、DT C、TT D、RT 知识点:10.1 二、多项选择题(共5题,每题2分) 1、AutoCAD2008中可以用来保存文件的命令有 。A SAVE B QSAVE C FSAVE D SAVE AS 知识点:1.12、AutoCAD的二维坐标可分为 。

A、直角坐标 B、极坐标 C、UCS坐标 D、三维坐标 知识点:2.13、若图面已有一点A (2,2) ,要输入另一点B (4,4) 以下方法正确的有 。A、4,4 B、@2,2 C、@4,4 D、@2<45 E、@4<45 知识点:2.24、当图形被使用ERASE命令删除后,即可以使用 命令恢复。

A、UNDO B、U C、OOPS D、REDO 知识点:5.15、用阵列命令“array”阵列对象时包含的阵列类型有 。A、曲线阵列 B、矩形阵列 C、正多边形阵列 D、环形阵列 知识点:5.3 标准答案: 一、单项选择题 1、C 2、D 3、C 4、D 5、C 6、D 7、B 8、C 9、D 10、B 11、D 12、A 13、C 14、D 15、B 二、多项选择题 1、ABD 2、ABC 3、ABD 4、AB 5、BD。

7.java对象的作用

举个例子来说吧:如果你创建了一个类Test,类里面有个方法shuchu,

publci class Test{

public void shuchu(){

System.out.println(”欢迎创建对象调用方法”);

}

}

如果你想在另一个类中调用这个方法怎么办呢,这时候就需要创建类Test的对象,如下:

public class Diaoyong(){

public static void main(String[] args){

Test te = new Test(); //创建对象

te.shuchu(); //调用方法

}

}

总结:java中有好多类,或者你自己创建的的类,这些类都是抽象的个体存在,在这些类里面有很多的方法,是不能直接用的,这时候就需要创建相应的类的对象,这样你就可以调用其中的方法了,如上面的实例。这就是对象的作用:将类实例化。可能描述的不是那么专业,还请见谅,也不知道是不是你想要的结果。

8.java基础知识 有哪些知识点 要全面 不用详细

第2章 一切都是对象2.1 用句柄操纵对象2.2 必须创建所有对象2.2.1 保存在什么地方2.2.2 特殊情况:主类型2.2.3 Java中的数组2.3 绝对不要清除对象2.3.1 作用域2.3.2 对象的作用域2.4 新建数据类型:类2.4.1 字段和方法2.5 方法、自变量和返回值2.5.1 自变量列表2.6 构建Java程序2.6.1 名字的可见性2.6.2 使用其他组件2.6.3 static关键字2.7 我们的第一个Java程序2.8 注释和嵌入文档2.8.1 注释文档2.8.2 具体语法2.8.3 嵌入HTML2.8.4 @see:引用其他类2.8.5 类文档标记2.8.6 变量文档标记2.8.7 方法文档标记2.8.8 文档示例2.9 编码样式2.10 总结2.11 练习第3章 控制程序流程3.1 使用Java运算符3.1.1 优先级3.1.2 赋值3.1.3 算术运算符3.1.4 自动递增和递减3.1.5 关系运算符3.1.6 逻辑运算符3.1.7 按位运算符3.1.8 移位运算符3.1.9 三元if-else运算符3.1.10 逗号运算符3.1.11 字串运算符+3.1.12 运算符常规操作规则3.1.13 造型运算符3.1.14 Java没有“sizeof”3.1.15 复习计算顺序3.1.16 运算符总结3.2 执行控制3.2.1 真和假3.2.2 if-else3.2.3 反复3.2.4 do-while3.2.5 for3.2.6 中断和继续3.2.7 切换3.3 总结3.4 练习第4章 初始化和清除4.1 由构建器保证初始化4.2 方法过载4.2.1 区分过载方法4.2.2 主类型的过载4.2.3 返回值过载4.2.4 默认构建器4.2.5 this关键字4.3 清除:收尾和垃圾收集4.3.1 finalize()用途何在4.3.2 必须执行清除4.4 成员初始化4.4.1 规定初始化4.4.2 构建器初始化4.5 数组初始化4.5.1 多维数组4.6 总结4.7 练习第5章 隐藏实施过程5.1 包:库单元5.1.1 创建独一无二的包名5.1.2 自定义工具库5.1.3 利用导入改变行为5.1.4 包的停用5.2 Java访问指示符5.2.1 “友好的”5.2.2 public:接口访问5.2.3 private:不能接触5.2.4 protected:“友好的一种”5.3 接口与实现5.4 类访问5.5 总结5.6 练习第6章 类再生6.1 合成的语法6.2 继承的语法6.2.1 初始化基础类6.3 合成与继承的结合6.3.1 确保正确的清除6.3.2 名字的隐藏6.4 到底选择合成还是继承6.5 protected6.6 递增开发6.7 上溯造型6.7.1 何谓“上溯造型”?6.8 final关键字6.8.1 final数据6.8.2 final方法6.8.3 final类6.8.4 final的注意事项6.9 初始化和类装载6.9.1 继承初始化6.10 总结6.11 练习第7章 多形性7.1 上溯造型7.1.1 为什么要上溯造型7.2 深入理解7.2.1 方法调用的绑定7.2.2 产生正确的行为7.2.3 扩展性7.3 覆盖与过载7.4 抽象类和方法7.5 接口7.5.1 Java的“多重继承”7.5.2 通过继承扩展接口7.5.3 常数分组7.5.4 初始化接口中的字段7.6 内部类7.6.1 内部类和上溯造型7.6.2 方法和作用域中的内部类7.6.3 链接到外部类7.6.4 static内部类7.6.5 引用外部类对象7.6.6 从内部类继承7.6.7 内部类可以覆盖吗?7.6.8 内部类标识符7.6.9 为什么要用内部类:控制框架7.7 构建器和多形性7.7.1 构建器的调用顺序7.7.2 继承和finalize()7.7.3 构建器内部的多形性方法的行为7.8 通过继承进行设计7.8.1 纯继承与扩展7.8.2 下溯造型与运行期类型标识7.9 总结7.10 练习第8章 对象的容纳8.1 数组8.1.1 数组和第一类对象8.1.2 数组的返回8.2 集合8.2.1 缺点:类型未知8.3 枚举器(反复器)8.4 集合的类型8.4.1 Vector8.4.2 BitSet8.4.3 Stack8.4.4 Hashtable8.4.5 再论枚举器8.5 排序8.6 通用集合库8.7 新集合8.7.1 使用Collections8.7.2 使用Lists8.7.3 使用Sets8.7.4 使用Maps8.7.5 决定实施方案8.7.6 未支持的操作8.7.7 排序和搜索8.7.8 实用工具8.8 总结8.9 练习第9章 违例差错控制9.1 基本违例9.1.1 违例自变量9.2 违例的捕获9.2.1 try块9.2.2 违例控制器9.2.3 违例规范9.2.4 捕获所有违例9.2.5 重新“掷”出违例9.3 标准Java违例9.3.1 RuntimeException的特殊情况9.4 创建自己的违例9.5 违例的限制9.6 用finally清除9.6.1 用finally做什么9.6.2 缺点:丢失的违例9.7 构建器9.8 违例匹配9.8.1 违例准则9.9 总结9.10 练习第10章 Java IO系统10.1 输入和输出10.1.1 InputStream的类型10.1.2 OutputStream的类型10.2 增添属性和有用的接口10.2.1 通过FilterInputStream从InputStream里读入数据10.2.2 通过FilterOutputStream向OutputStream里写入数据10.3 本身的缺陷:RandomAccessFile10.4 File类10.4.1 目录列表器10.4.2 检查与创建目录10.5 IO流的典型应用10.5.1 输入流10.5.2 输出流10.5.3 快捷文件处理10.5.4 从标准输入中读取数据10.5.5 管道数据流10.6 StreamTokenizer10.6.1 StringTokenizer10.7 Java 1.1的IO流10.7.1 数据的发起与接收10.7.2 修改数据流的行为10.7.3 未改变的类10.7.4 一个例子10.7.5 重定向标准IO10.8 压缩10.8.1 用GZIP进行简单压缩10.8.2 用Zip进行多文件保存10.8.3 Java归档(jar)实用程序10.9 对象串联10.9.1 寻找类10.9.2 序列化的控制10.9.3 利用“持久性”10.10 总结10.11 练习第11章 运行期类型鉴定11.1 对RTTI的需要11.1.1 Class对象11.1.2 造型前的检查11.2 RTTI语法11.3 反射:运行期类信息11.3.1 一个类方法提取器11.4 总结11.5 练习第12章 传递和返回对象12.1 传递句柄12.1.1 别名问题12.2 制作本地副本12.2.1 按值传递12.2.2 克隆对象12.2.3 使类具有克隆能力12.2.4 成功的克隆12.2.5 Object.clone()的效果12.2.6 克隆合成对象12.2.7 用Vector进行深层复制12.2.8 通过序列化进。

%title插图%num