认识J2SE

认识J2SE1 J2SE 的定义 J2SE 全称为 Java2Standar Java2 平台包括 标准版 J2SE 企业版 J2EE 和微缩版 J2ME 三个版本 J2SE 主要包括 UI 集成库 语言和工具基础库 其他基础库 java 虚拟机等组件 2 面向对象 2 1 类与对象的关系 类是现实世界或者思维世界中的实体在计算机中的反映 它将数据以及这些数据的操作封装在一起 对象是具有类类型的变

1. J2SE的定义

J2SE:全称为Java 2 Standard Edition。Java 2平台包括:标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本。

J2SE主要包括UI、集成库、语言和工具基础库、其他基础库、java虚拟机等组件。

2. 面向对象

2.1 类与对象的关系:

类是现实世界或者思维世界中的实体在计算机中的反映,它将数据以及这些数据的操作封装在一起。对象是具有类类型的变量。

类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模版。

2.2 面向对象实例

package 面对对象实例; // 图书一般有书名name、作者author、编码ISBN public class Book { private String name; private String author; private String ISBN; //利用构造方法初始化域 public Book(String name,String author,String ISBN) { this.name = name; this.author = author; this.ISBN = ISBN; } public String getName() //获得书名 { return name; } public String getAuthor() //获得作者 { return author; } public String getISBN() //获得编码 { return ISBN; } } 
package 面对对象实例; public class Test { public static void main(String[] args) { Book book = new Book("This is my book","Peter","123"); System.out.println("Book Name: "+book.getName()); } } 

this的用法:

(1)this 关键字是类内部当中对自己的一个引用,可以方便类中方法访问自己的属性;

(2)可以返回对象的自己这个类的引用,同时还可以在一个构造函数当中调用另一个构造函数。

3. 动态化实例类

在面向对象的编程中,把用类创建对象的过程称为实例化。通常是使用有参数或无参数的构造方法来创建对象。其格式如下:

//有参数的情形 类名 对象名 = new 类名(参数1,参数2...参数n); //例如下面这个例子 Person peter = new Person("Peter","boy"); //无参数的情形 类名 对象名 = new 类名(); //例如下面这个例子 Dog dog_1 = new Dog();

在java中,类的实例化方法

1. 使用new操作符 2. 调用Class对象的newInstance()方法 3. 调用clone()方法,对现有实例的拷贝 4. 通过ObjectInputStream的readObject()方法反序列化类

我们在自定义图书类这个例子中,编写了有参数的构造方法public Book(String name, String author, String ISBN)。但如果类中没有定义构造方法,编译器便会自动添加一个无参数的构造方法。使用构造方法创建对象虽然常用,但并不灵活。因此,我们再来了解一下动态化实例类,也就是调用Class对象的newInstance()方法,通过反射创建对象。

反射 && 反射机制
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取信息以及动态调用对象的方法的功能称为java语言的反射机制。

如何创建动态化实例类

import java.io.File; import java.lang.reflect.Constructor; //需要引用上述两个包 public class Test { public static void main(String[] args) { try { Constructor 
  
    constructor = File.class.getDeclaredConstructor(String.class); 
   //获得File类的Constructor对象 System. 
   out.println( 
   "Create File Object with reflection."); 
   //使用反射创建File对象 File file = constructor.newInstance( 
   "C:/Users/Administrator/Desktop/11/MyFile.txt"); System. 
   out.println( 
   "Use File Object to create MyFile.txt on desktop."); 
   //指定了创建的路径为桌面,名称为“MyFile.txt”,这里路径可以自己设置 file.createNewFile(); 
   //创建新的文件 System. 
   out.println( 
   "File is created ?" + file.exists()); 
   //验证文件是否创建成功 } 
   catch (Exception e) { e.printStackTrace(); } } } 
  
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/222386.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午3:53
下一篇 2026年3月17日 下午3:53


相关推荐

  • centos7下设置vi的colorscheme

    centos7下设置vi的colorscheme每次在 centos 机器上使用 vi 编辑文件 发现总是默认的黑底白字 效果非常不好 于是 开始着手让 vi 编辑界面有色彩 开始直接设置 etc virc 修改完成之后 由于系统没有 murpy 色彩主题 每次 vi 编辑文件时都提示 Cannotfindco murphy 需要安装 vim 才能显示 接下来 开始安装 vim 运行 yumsearchvim 命令 发现有如下几个

    2026年3月18日
    2
  • 在线客服系统源码demo/PHP客服系统下载附php源码「建议收藏」

    在线客服系统源码demo/PHP客服系统下载附php源码「建议收藏」在线客服系统软件为每个客户提供个性化的一对一支持。在线客服系统源码安装实时聊天小部件在尽可能多的网站和博客上并可定制聊天小部件完全适合您的网站。从一系列颜色和选项混合搭配。在线客服系统附源码演示及下载地址:ym.ws58.net在线客服系统源码H5通过为常见答案和回复创建快捷方式来节省时间。基于thinkphp在网页线客服完整源码下载地址:ym.ws58.net在聊天室里点击一个按钮就可以看到这些,只需单击一次即可将聊天内容传送到其他代理。团队合作以取悦顾客。实时聊天小部件跟踪访问者浏览您.

    2022年7月19日
    23
  • MySql基础整理

    http://hovertree.com/menu/mysql/useabccs;select*frommytable2limit3,4;callsp_name1(1,@nn);sel

    2021年12月24日
    31
  • iframe关闭父页面(iframe嵌套https页面)

    iframe是html标签,具有一般标签的属性:widthiframe的高度heightiframe的宽度srciframe里面加载的页面urlname可以通过window.frames[name]获取到frameid和其他的html标签id一样在主页面中通过iframe标签可以引入其他子页面其中可以通过以下方法获取到iframe内部子页面的信息<!–…

    2022年4月10日
    324
  • 彻底弄懂StringBuffer与StringBuilder的区别「建议收藏」

    彻底弄懂StringBuffer与StringBuilder的区别「建议收藏」一问道StringBuffer与StringBuilder的区别,张口就来StringBuffer是线程安全的,因为它相关方法都加了synchronized关键字,StringBuilder线程不安全。没错,确实如此,但是我们查看过源码会发现StringBuffer是从jdk1.0就开始了,StringBuilder是从jdk1.5开始的。于是我就产生这样一个疑问,既然已经有了StringBu…

    2022年6月28日
    27
  • hdu5188 加限制的01背包问题「建议收藏」

    hdu5188 加限制的01背包问题

    2022年1月27日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号