精华内容
下载资源
问答
  • Java语言特点

    万次阅读 多人点赞 2019-06-30 19:37:45
    Java语言的语法与C语言和C++语言很接近,从某种意义上讲,它是由C和C++演变而来,使得大多数程序员很容易学习和使用。 对C++来说进行了简化和一定的提高,如:使用接口代替了复杂的多重继承以及取消了指针,还通过...

    Java图标

    Java语言是简单的

    1. Java语言的语法与C语言和C++语言很接近,从某种意义上讲,它是由C和C++演变而来,使得大多数程序员很容易学习和使用。
    2. 对C++来说进行了简化和一定的提高,如:使用接口代替了复杂的多重继承以及取消了指针,还通过实现垃圾自动回收机制,大大简化了程序员的资源释放管理工作。
    3. 提供了丰富的类库和API文档,以及第三方开发包工具包,还有大量的基于Java的开源项目,帮助程序设计人员参考学习,JDK就是开放的源代码之一,读者可以通过分析项目的源代码,来提高自己的编程水平。

    Java语言是面向对象的

    面向对象就是Java语言的基础,也是Java语言的重要特性。面向对象是指以对象为基本单元,包含属性和方法。对象的状态用属性表达,对象的行为用方法表达。

    面向对象技术使得应用程序的开发变得简单易用,节省代码。总之,Java语言是一个纯面向对象的程序设计语言。

    Java语言是分布式的

    1. 分布性主要包括两大方面,分别是操作分布和数据分布,其中操作分布指的是在多个不同的主机上布置相关操作,数据分布是将数据分别存放在多个网络中不同的主机上,借助的是URL(统一资源定位符)访问网络对象,访问方式和访问本地系统相似。
    2. Java语言具有一个强大的,易于使用的网络能力,这是非常适合于分布式计算程序的。
    3. Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java.net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。

    Java语言是多线程的

    多线程机制使应用程序在同一时间并行执行多项任务,Java语言提供多线程之间的同步机制,这些相应的同步机制可以很好的保证不同线程,能够正确的共享数据。多线程机制使程序具有更好的交互性和实时性。

    Java语言是高性能的

    1. Java是一种先编译后解释的语言,所以它不如全编译性语言快。但是有些情况下性能是很要紧的,为了支持这些情况,Java设计者制作了“及时”编译程序,它能在运行时把Java字节码翻译成特定CPU(中央处理器)的机器代码,也就是实现全编译了。Java字节码格式设计时考虑到这些“及时”编译程序的需要,所以生成机器代码的过程相当简单,它能产生相当好的代码。
    2. 与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。

    Java语言是跨平台的

    1. 所谓的跨平台性,是指软件可以不受计算机硬件和操作系统的约束而在任意计算机环境下正常运行。这是软件发展的趋势和编程人员追求的目标。之所以这样说,是因为计算机硬件的种类繁多,操作系统也各不相同,不同的用户和公司有自己不同的计算机环境偏好,而软件为了能在这些不同的环境里正常运行,就需要独立于这些平台。
    2. 在Java语言中,Java自带的虚拟机很好地实现了跨平台性。Java源代码经过编译后生成二进制的字节码是与平台无关的,Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够Write once, run anywhere(一次编译,到处运行)的原因。Java虚拟机提供了一个字节码到底层硬件平台及操作系统的屏障,使得Java语言具备跨平台性。

    Java语言是可移植的

    可移植性来源于跨平台性性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。

    Java语言是安全的

    在Java语言中删除了类似于C语言中的指针和内容释放等语法,有效的避免了非法操作内存,代码要经过校验之后才能够运行,所以未经允许的Java程序不可能出现损害系统平台的行为,最大的好处就是,Java可以编写防病毒和可修复的系统,Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击,从而可以提高系统的安全性。

    Java语言是健壮的

    Java语言的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。

    Java语言是动态的

    1. Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类,这也有利于软件的升级。
    2. Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
    展开全文
  • Java基础教程

    万人学习 2018-03-26 18:54:25
    它能为互联网应用、企业内部应用提供很好的程序,还可以在硬件如手机,家电,机床,服务器,电脑,机器人等上面进行嵌入式编程让硬件活动,也可以用来建设网站,比如影音艺这个网站就是使用Java语言写的。...
  • Java入门

    千次阅读 多人点赞 2019-04-06 18:54:50
    Java入门 Java 入门 主要内容 Java的地位 Java诞生 Java的特点 安装JDK 简单的Java应用程序 重点与难点: 重点:Java平台无关性、Java程序的结构。 难点:Java程序的开发过程。 Java之父与Java的诞生 Java是1995年6...

    Java入门

    Java 入门

    主要内容
    Java的地位
    Java诞生
    Java的特点
    安装JDK
    简单的Java应用程序

    重点与难点:
    重点:Java平台无关性、Java程序的结构。
    难点:Java程序的开发过程。

    Java之父与Java的诞生
    Java是1995年6月由Sun公司引进到我们这个世界的革命性的编程语言。1990年Sun公司成立了由James Gosling领导的开发小组,开始致力于开发一种可移植的、跨平台的语言,该语言能生成正确运行于各种操作系统、各种CPU芯片上的代码。他们的精心专研和努力促成了Java语言的诞生。

    Java的先导知识与后继技术
    学习Java语言需要读者曾系统地学习过一门面向过程的编程语言,比如C语言。读者学习过Java语言之后,可以继续学习和Java相关的一些重要内容,比如,学习和数据库设计相关的Java Database Connection(JDBC)、Web设计相关的Java Server Page(JSP)、Android手机程序设计、数据交换技术相关的eXtensible Markup Language(XML)以及网络中间件设计相关的Java Enterprise Edition(Java EE),如图1.1所示。

    在这里插入图片描述

    1.1 Java的地位

    1.1.1 网络地位
    Java的平台无关性让Java成为编写网络应用程序的佼佼者,而且Java也提供了许多以网络应用为核心的技术,使得Java特别适合于网络应用软件的设计与开发。
    1.1.2 语言地位
    是一门很好的面向对象语言,通过学习Java语言可以学习怎样使用对象来完成某些任务、掌握面向对象编程的基本思想.
    1.1.3 需求地位
    IT行业对Java人才的需求正在不断的增长,掌握Java语言及其相关技术意味着较好的就业前景和工作酬金。

    1.2 Java 的特点_1

    1.2.1 简单
    Java要比C++简单,C++中许多容易混淆的概念,或者被Java弃之不用了,或者以一种更清楚更容易理解的方式实现。

    1.2.2 面向对象
    Java是面向对象的编程语言。

    1.2.3 平台无关
    在一个计算机上编译得到的字节码文件(.class文件)可以复制到任何一个安装了Java运行环境的计算机上直接使用。字节码由Java虚拟机负责解释运行,即Java虚拟机负责将字节码翻译成本地计算机的机器码,并将机器码交给本地的操作系统来运行。
    1.平台与机器指令
    这里所指的平台是由操作系统(Operating System, OS)和处理器CPU所构成。
    与平台无关是指软件的运行不因操作系统、处理器的变化而无法运行或出现运行错误。
    (每个平台都会形成自己独特的机器指令,所谓平台的机器指令就是可以**被该平台直接识别、执行的一种由0,1组成的序列代码。**相同的CPU和不同的操作系统所形成的平台的机器指令可能是不同的。比如,某个平台可能用8位序列代码00001111表示加法指令,以10000001表示减法指令,而另一种平台可能用8位序列代码10101010表示加法指令,以10010011表示减法指令。)
    2.Java虚拟机与字节码
    字节码并不是机器指令,因为它不和特定的平台相关,不能被任何平台直接识别、执行。Java针对不同平台提供的Java虚拟机的字节码指令都是相同的,Java虚拟机负责将字节码翻译成虚拟机所在平台的机器码,并让当前平台运行该机器码,如图1.3所示。
    在这里插入图片描述
    **

    1.2 Java 的特点_2

    1.2. 4 多线程
    Java的特点之一就是内置对多线程的支持。多线程允许同时完成多个任务。

    1.2.5 动态
    Java程序的基本组成单元就是类,有些类是自己编写的,有一些是从类库中引入的,而类又是运行时动态装载的,这就使得Java可以在分布环境中动态地维护程序及类库。

    1.3 安装JDK
    1.3.1 三种平台简介
    目前Java平台主要分为下列3个版本:
    (1)Java SE(曾称为J2SE)称为Java标准版或Java 标准平台.
    (2)Java EE(曾称为J2EE)称为Java企业版或Java企业平台.
    (3)Java ME(曾称为J2ME)称为Java微型版或Java小型平台.
    无论上述哪种Java运行平台都包括了相应的Java虚拟机(Java Virtual Machine),虚拟机负责将字节码文件(包括程序使用的类库中的字节码)加载到内存,然后采用解释方式来执行字节码文件,即根据相应平台的机器指令翻译一句执行一句。

    1.3.2 安装Java SE平台
    Java SE平台是学习掌握Java语言的最佳平台,而掌握Java SE又是进一步学习Java EE和Android所必须的。
    下载JDK1.8。 本书将使用针对Window操作系统平台的JDK,因此下载的版本为jdk-8u102-windows-x64.exe。
    选择安装路径界面。为了便于今后设置环境变量,建议修改默认的安装路径为:D:\jdk1.8 。

    下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
    在这里插入图片描述
    1.系统环境path的设置
    JDK平台提供的Java编译器(javac.exe)和Java解释器(java.exe)位于Java安装目录的\bin文件夹中.

    A.首先设置系统变量JAVA_HOME
    右键单击“我的电脑或计算机”,在弹出的快捷菜单中选择“属性”,弹出“系统特性”对话框,再单击该对话框中的“高级属性设置”,然后单击按钮“环境变量”,添加系统环境变量JAVA_HOME,让该环境变量的值是JDK目录结构的根目录,例如E:\jdk1.8,如图1.7。
    在这里插入图片描述
    B.设置系统环境path的的值
    用鼠标右键单击“计算机”/“我的电脑”,在弹出的快捷菜单中选择“属性”命令弹出“系统”对话框单击该对话框中的“高级系统设置”/“高级选项”,然后单击按钮“环境变量”弹出环境变量设置对话框,在该对话框中的“系统变量(S)”中找到path、单击按钮“编辑(I) 弹出编辑系统变量对话框,在该对话框中编辑path的值即可。这里,我们为path添加的新值就是E:\JDK1.8\bin。由于已经设置了系统变量JAVA_HOME的值是E:\JDK1.8,因此可以用%JAVA_HOME%代替E:\JDK1.8。在弹出编辑系统变量对话框中为path添加的新值是%JAVA_HOME%\bin,如图1.9。
    在这里插入图片描述
    2.系统环境classpath的设置
    一般不需要设置环境变量classpath的值。如果计算机安装过一些商业化的Java开发产品或带有Java技术的一些产品,安装这些产品后,classpath的值可能会被修改了。如果希望使用最新的Java运行环境,就重新设置 classpath的值,如图1.10。(E:\jdk1.8\jre\lib\rt.jar;.?
    Classpath值中的( .; ) 是指可以加载应用程序当前目录及其子目录中的类。
    在这里插入图片描述

    1.4 Java程序的开发步骤

    开发步骤:
    1) 编写源文件:扩展名必须是 .java。
    2) 编译Java源程序:用Java编译器(javac.exe)编译源文件,得到字节码文件。
    3) 运行Java程序:使用Java解释器(java.exe)来解释执行字节码文件。
    在这里插入图片描述

    1.5 简单的Java应用程序

    1.5.1 源文件的编写与保存
    Java应用程序的源文件是由若干个书写形式互相独立的类组成。
    例子1:
    在这里插入图片描述
    编写与保存源文件
    1 编写源文件
    使用一个文本编辑器,如Edit或记事本编写上述例子1给出的源文件。
    Java源程序中语句所涉及到的小括号及标点符号都是英文状态下输入的括号和标点符号,比如“大家好!”中的引号必须是英文状态下的引号,而字符串里面的符号不受汉字符或英文字符的限制。

    2. 保存源文件
    如果源文件中有多个类,那么只能有一个类是public类;如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是java;如果源文件没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名是java就可以了。

    上述例子1中的源文件必须命名为Hello.java。我们将Hello.java保存到C:\chapter1文件夹中。

    1.5.2 编译
    1.编译器(javac)
    进入逻辑分区C的chapter1目录中,使用编译器javac编译源文件(如图1.11):
    图1.11 使用javac编译源文件
    C:\chapter1> javac Hello.java
    在这里插入图片描述
    1.5.3 运行
    1.应用程序的主类
    一个Java应用程序必须有一个类含有
    public static void main(String args[ ])
    方法,称这个类是应用程序的主类。

    2.解释器(java)
    使用Java虚拟机中的Java解释器(java.exe)来解释执行其字节码文件。Java应用程序总是从主类的main方法开始执行。因此,需进入主类字节码所在目录,比如C:\chapter1,然后使用Java解释器(java.exe)运行主类的字节码. 图1.14 使用java解释器运行程序
    C:\chapter1> java Hello
     图1.14  使用Java解释器运行程序

    再看一个简单的Java应用程序

    不要求读者看懂程序的细节,但读者必须知道怎样保存.
    例子2中的Java源文件(源文件里有2个类)、怎样使用编译器编译源程序、怎样使用解释器运行程序 。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    1.6 Java反编译

    JDK提供的反编译器是javap.exe(也有真对Java的许多商业反编译软件,例如dj-gui反编译)。如果想反编译例子1中的Hello.class,可使用javap命令:javap Hello.class ,例如:
    C:\chapter1> javap Hello.class

    如果想反编译类库中的Date类(其包名是java.util)Date.class,可使用javap命令:javap java.util.Date.class,例如:
    C:\chapter1> javap java.util.Date.class

    1.7 编程风格

    1.7.2 Kernighan风格
    Kernighan风格也称“行尾”风格,即左大括号在上一行的行尾,而右大括号独占一行,如下列代码所示意。当代码量较大时不适合使用“独行”风格,因为该风格将导致代码的左半部分出现大量的左、右大括号,导致代码清晰度下降,这时应当使用“行尾”风格
    在这里插入图片描述

    1.7 注释

    编译器忽略注释内容,注释的目的是有利于代码的维护和阅读,因此给代码增加注释是一个良好的编程习惯。
    Java支持两种格式的注释:单行注释和多行注
    单行注释使用“//”表示单行注释的开始,即该行中从“//”开始的后续内容为注释 .
    多行注释的使用“/”表示注释的开始,以“/”表示注释结束 .
    文档注释。“/**”表示注释的开始,以*/”表示注释结束

    总结

    1 Java语言是面向对象编程,编写的软件与平台无关。

    2 开发一个Java程序需经过三个步骤:编写源文件、编译源文件生成字节码、加载运行字节码。

    3 编写代码务必遵守行业的习惯风格。

    展开全文
  • JAVA上百实例源码以及开源项目

    千次下载 热门讨论 2016-01-03 17:37:40
     使用Java语言编写的一款用于反映颜色变化的面板,也就是大家熟悉的颜色调色板演示程序。原理是初始化颜色选择按钮,然后为颜色选择按钮增加事件处理事件,最后实例化颜色选择器。 Java二进制IO类与文件复制操作...
  • 轻松搞定Java Web面试视频教程

    千人学习 2017-07-18 10:55:33
    轻松搞定Java Web面试视频培训教程主要是帮助正在找工作的毕业生或者想找更好工作的社会人员而设计的一系列课程。本人根据自己在阿里,爱奇艺,饿了么,携程,2345,小米,招商银行等等大公司的面试经验而总结出这样...
  • JAVA类之间方法的调用

    万次阅读 多人点赞 2018-11-02 23:39:15
    JAVA类方法的调用一、静态方法调用其他方法:1. 静态方法调用非静态方法2.静态方法调用静态方法二、非静态方法调用其他方法1.非静态方法在同一类内调用其他方法2.非静态方法在不同类之间调用其他方法 注:调用方法...

    注:调用方法——调用另一方法的方法
    被调用方法——被调用的方法

    一、静态方法调用其他方法:

    1. 静态方法调用非静态方法

    无论是否在同一类内,均需要通过对象调用

    //Test类
    package main;
    
    public class Test {
    
        public void IsSon1(){//非静态方法
            System.out.println("java大爷,你成功调用了你非静态方法里的儿子1");
        }
    
        public static void main(String[] args) {
            Test son1=new Test();
            son1.IsSon1();//静态方法通过对象调用此类中的非静态方法
            Son son=new Son();//静态方法通过对象调用Son类中的非静态方法
            son.IsSon();
        }
    }
    
    //Son类
    package main;
    
    public class Son {
        public  void IsSon(){
            System.out.println("java大爷,你成功的调用了你另一个类里的儿子");
        }//Son类里的非静态方法
    }
    

    输出结果

    2.静态方法调用静态方法

    同一类内直接调用,不同类内直接通过类名.方法名(参数表)调用

    package main;
    
    public class Test {
    
        public static void IsSon2(){//静态方法
            System.out.println("java大爷,你成功调用了你静态方法里的儿子2");
        }
    
        public static void main(String[] args) {
            IsSon2();//静态方法直接调用类内的静态方法
            Son.IsSon3();//静态方法通过类名直接调用Son类中的静态方法
        }
    }
    
    package main;
    
    public class Son {
        public  static void IsSon3(){
            System.out.println("java大爷,你成功的调用了你另一个类里的静态儿子3");
        }//Son类里的静态方法
    }
    
    

    输出结果

    二、非静态方法调用其他方法

    1.非静态方法在同一类内调用其他方法

    在同一类内,非静态方法可以直接调用静态方法和非静态方法

    package main;
    
    public class Test {
    
        public void Son1(){//非静态方法
            System.out.println("java大爷,你成功调用了你非静态方法里的儿子1");
        }
        public static void Son2(){//静态方法
            System.out.println("java大爷,你成功调用了你静态方法里的儿子2");
        }
        public void alloutput(){
            Son1();//非静态方法直接调用类内的非静态方法△
            Son2();//非静态方法直接调用类内的静态方法△
        }
        public static void main(String[] args) {
            Test test = new Test();
            test.alloutput();//前边已学静态方法通过对象调用非静态方法
        }
    }
    

    输出结果

    2.非静态方法在不同类之间调用其他方法

    在不同类之间,非静态方法需要通过对象才能调用非静态方法。
    非静态方法既可以通过对象调用静态方法又可以通过类名直接调用(由于对象的调用方式属于非静态调用方式,所以建议使用类名直接调用静态方法)

    package main;
    
    public class Test {
    
        public void output(){
            Son.IsSon1();//通过类名直接调用Son类中的静态方法,不建议使用对象调用静态方法
            Son son = new Son();
            son.IsSon2();//通过对象调用Son类中的非静态方法
        }
    
        public static void main(String[] args) {
            //同一类中的静态方法调用非静态方法output,前边已经涉及到
            Test test = new Test();
            test.output();
        }
    }
    
    package main;
    
    public class Son {
    
        public  static void IsSon1(){//Son类里的静态方法
            System.out.println("java大爷,你成功的调用了你另一个类里的静态儿子1");
        }
    
        public  void IsSon2(){//Son类里的非静态方法
            System.out.println("java大爷,你成功的调用了你另一个类里的非静态儿子2");
        }
    }
    
    

    输出结果

    借鉴前人的经验1

    借鉴前人的经验2
    小白上路,如有问题希望各路神手指教 /抱拳

    展开全文
  • Java创建对象详解:Java创建对象的几种方法

    万次阅读 多人点赞 2019-05-10 20:01:32
    Java 对象的生命周期包括创建、使用和清除,本文详细介绍对象的创建,在 Java 语言中创建对象分显式创建与隐含创建两种情况。 显式创建对象 对象的显式创建方式有 4 种。 1. 使用 new 关键字创建对象 这是常用的创建...

    对象是对类的实例化。对象具有状态和行为,变量用来表明对象的状态,方法表明对象所具有的行为。Java 对象的生命周期包括创建、使用和清除,本文详细介绍对象的创建,在 Java 语言中创建对象分显式创建隐含创建两种情况。

    显式创建对象

    对象的显式创建方式有 4 种。

    1. 使用 new 关键字创建对象
    这是常用的创建对象的方法,语法格式如下:
    类名 对象名=new 类名();

    2. 调用 java.lang.Class 或者 java.lang.reflect.Constuctor 类的 newlnstance() 实例方法
    在 Java 中,可以使用 java.lang.Class 或者 java.lang.reflect.Constuctor 类的 newlnstance() 实例方法来创建对象,代码格式如下:
    java.lang.Class Class 类对象名称=java.lang.Class.forName(要实例化的类全称);
    类名 对象名=(类名)Class类对象名称.newInstance();

    调用 java.lang.Class 类中的 forName() 方法时,需要将要实例化的类的全称(比如 com.mxl.package.Student)作为参数传递过去,然后再调用 java.lang.Class 类对象的 newInstance() 方法创建对象。

    3. 调用对象的 clone() 方法
    该方法不常用,使用该方法创建对象时,要实例化的类必须继承 java.lang.Cloneable 接口。 调用对象的 clone() 方法创建对象的语法格式如下:
    类名对象名=(类名)已创建好的类对象名.clone();

    4. 调用 java.io.ObjectlnputStream 对象的 readObject() 方法

    下面创建一个示例演示常用的前三种对象创建方法。示例代码如下:

    public class Student implements Cloneable
    {   
        //实现 Cloneable 接口
        private String Name;    //学生名字
        private int age;    //学生年龄
        public Student(String name,int age)
        {    //构造方法
            this.Name=name;
            this.age=age;
        }
        public Student()
        {
            this.Name="name";
            this.age=0;
        }
        public String toString()
        {
            return"学生名字:"+Name+",年龄:"+age;
        }
        public static void main(String[] args)throws Exception
        {
            System.out.println("---------使用 new 关键字创建对象---------");
           
            //使用new关键字创建对象
            Student student1=new Student("小刘",22);
            System.out.println(student1);
            System.out.println("-----------调用 java.lang.Class 的 newInstance() 方法创建对象-----------");
           
            //调用 java.lang.Class 的 newInstance() 方法创建对象
            Class cl=Class.forName("Student");
            Student student2=(Student)cl.newInstance();
            System.out.println(student2);
            System.out.println("-------------------调用对象的 clone() 方法创建对象----------");
            //调用对象的 clone() 方法创建对象
            Student student3=(Student)student2.clone();
            System.out.println(student3);
        }
    }
    
    

    对上述示例的说明如下:

    使用 new 关键字或 Class 对象的 newInstance() 方法创建对象时,都会调用类的掏造方法。
    使用 Class 类的 newInstance() 方法创建对象时,会调用类的默认构造方法,即无参构造方法。
    使用 Object 类的 clone() 方法创建对象时,不会调用类的构造方法,它会创建一个复制的对象,这个对象和原来的对象具有不同的内存地址,但它们的属性值相同。
    如果类没有实现 Cloneable 接口,则 clone。方法会抛出 java.lang.CloneNotSupportedException 异常,所以应该让类实现 Cloneable 接口。

    程序执行结果如下:

    ---------使用 new 关键字创建对象---------
    学生名字:小刘,年龄:22
    -----------调用 java.lang.Class 的 newInstance() 方法创建对象-----------
    学生名字:name,年龄:0
    -------------------调用对象的done()方法创建对象----------
    学生名字:name,年龄:0
    

    隐含创建对象

    除了显式创建对象以外,在 Java 程序中还可以隐含地创建对象,例如下面几种情况。
    ①String strName=“strValue”,其中的“strValue”就是一个 String 对象,由 Java 虚拟机隐含地创建。
    ②字符串的“+”运算符运算的结果为一个新的 String 对象,示例如下:
    String str1=“Hello”;
    String str2=“Java”;
    String str3=str1+str2; //str3引用一个新的String对象
    ③当 Java 虚拟机加载一个类时,会隐含地创建描述这个类的 Class 实例。

    **提示:**类的加载是指把类的 .class 文件中的二进制数据读入内存中,把它存放在运行时数据区的方法区内,然后在堆区创建一个 java.lang.Class 对象,用来封装类在方法区内的数据结构。

    无论釆用哪种方式创建对象Java 虚拟机在创建一个对象时都包含以下步骤:

    1. 给对象分配内存。
    2. 将对象的实例变量自动初始化为其变量类型的默认值。
    3. 初始化对象,给实例变量赋予正确的初始值。

    注意: 每个对象都是相互独立的,在内存中占有独立的内存地址,并且每个对象都具有自己的生命周期,当一个对象的生命周期结束时,对象就变成了垃圾,由 Java 虚拟机自带的垃圾回收机制处理。

    展开全文
  • java如何生成随机数

    万次阅读 多人点赞 2019-04-28 21:14:17
    java生成随机数有两种方法: 1、使用Math方法,Math.random()随机生成一个double类型[0,1),如果想生成1~100的随机数: 如:int num = (int)(Math.random()*100); 2、使用Random方法, Random random = new ...
  • Java中数组的输入输出

    万次阅读 多人点赞 2019-08-15 15:28:59
    Java实际没有多维数组,只有一维数组,多维数组被解读为"数组的数组",例如二维数组magicSquare是包含{magicSquare[0], magicSquare[1],magicSquare[2]}三个元素的一维数组,magicSqure[0]是包含{16,3,2,13}四...
  • java源码包---java 源码 大量 实例

    千次下载 热门讨论 2013-04-18 23:15:26
     使用Java语言编写的一款用于反映颜色变化的面板,也就是大家熟悉的颜色调色板演示程序。原理是初始化颜色选择按钮,然后为颜色选择按钮增加事件处理事件,最后实例化颜色选择器。 Java二进制IO类与文件复制操作...
  • Java的常用输入输出语句

    万次阅读 多人点赞 2018-04-14 19:03:38
    一、概述 输入输出可以说是计算机的基本功能。作为一种语言体系,java中主要按照流(stream)...Java语言体系中,对数据流的主要操作都封装在java.io包中,通过java.io包中的类可以实现计算机对数据的输入、输出操作...
  • Java使用SOAP方式调用Web service

    万次阅读 2017-05-09 00:39:17
    工作上用到的调用webservice的方式使用Java底层的方式,不需要第三方jar包 目前是基本款满足了工作的需求了,里面还没有使用到soapheader验证,下回找个实例再写一个吧…… package com.zhl.common; import ...
  • 全栈工程师开发手册 (作者...java使用RSA加密方式实现数据加密解密,需要首先产生私钥和公钥测试代码public static void main(String args[]) { try { RSADemo rsa=new RSADemo(); rsa.generateKey(); byte[] da
  • java数据传递方式

    万次阅读 2020-10-26 14:07:17
    值传递和引用传递的定义: ...基本数据类型数据传递方式: 基本数据类型是典型的值传递方式: int i = 99; int j = i; i = 90; System.out.println(i); System.out.println(j); 很显然,结果是
  • HanLP Java 配置和初步使用

    千次阅读 2020-02-08 17:13:40
    HanLP Java IDEA配置和初步使用HanLP介绍HanLP安装(Java方式一:Maven仓库方式二:自行下载jar、data、hanlp.properties。HanLP初步使用NLP分词初体验 HanLP介绍 HanLP是一款面向生产环境的自然语言处理工具包。 ...
  • Java中迭代器的使用

    万次阅读 多人点赞 2019-03-03 22:14:56
    java中提供了很多种集合,它们在存储元素时,采用的存储方式不同。所以当我们要取出这些集合中的元素时,可以通过一种通用的获取方式来完成。 Collection集合元素的通用获取方式: 在取元素之前先要判断集合中有...
  • vscode安装和使用教程 Java

    万次阅读 多人点赞 2019-05-09 13:42:48
    经朋友推荐,最近想开始写几篇vscode这款IDE的使用方法,因为听说是轻量级的,速度也快,还可以编写Java,所以来尝试一下哈哈~ 目录 一、下载 二、使用 三、设置工作空间 四、新建Java项目 一、下载 1.网址 ...
  • Java Callable、Future的两种使用方式

    万次阅读 2017-09-21 16:49:00
    Java Callable、Future的两种使用方式 Callable+Future public class Test { public static void main(String[] args) { ExecutorService executor = Executors.newCachedThreadPool(); Task task = new
  • 什么是Java的对象引用? Java中都有哪些类型的对象引用? Java中提供的Java对象引用主要有什么目的? 通过本文,你就能很清楚得了解Java的对象引用
  • FastDFS Java Api 使用教程

    万次阅读 2019-01-02 16:47:11
    上一篇文章分布式文件管理系统FastDFS搭建教程(FastDFS+nginx+fastdfs-nginx-module)已经讲解了环境的搭建,接下来这个,是讲FASTDFS JAVA API的使用。主要maven引用, MAVEN管理 自己构建的话,官方项目地址是 ...
  • 经过前面两篇博客的介绍,相信对于 JavaStruct 的认识以及编程使用,读者已经有一定的基础了。只要理解和实践结合起来,掌握还是很容易的。下面进行一些数组使用方面的实例说明及演示。 在结构体类中使用数组有几种...
  • 手把手实现Java图书管理系统(附源码)

    万次阅读 多人点赞 2020-02-03 11:43:43
    基于SSM的图书管理系统的设计与实现 本课程演示的是一套基于Java的SSM框架实现的图书管理系统,主要针对计算机...以通俗易懂的方式,手把手的带你从零开始运行本套图书管理系统,该项目附带全部源码可作为毕设使用 ...
  • 1.1Java使用JDBC原生方式连接MySql数据库

    万次阅读 多人点赞 2019-04-18 19:12:25
    前言:今天有朋友问我原生的java连接数据库,因为框架的使用,如果基础不牢固的人,是很容易遗忘原生的连接方式。今天正好趁此做一下回顾:    这里只考虑原生方式,框架就不在这里细说。   一...
  • 前一篇在介绍 JavaStruct 类时指定了使用使用环境为 Java 5 及以上,也即开发我们使用的 JDK 版本为1.5及以上就可以了。以下讲解的用例可以直接将 code 直接粘贴到 java 的 main 函数中执行就可以了,后面会给出...
  • java创建exe程序快捷方式

    千次阅读 2018-04-24 12:25:28
    java创建exe程序快捷方式我们平时可以使用鼠标右击exe选择创建快捷方式,但是如何使用java代码创建exe的快捷方式呢?比如说我用java写好一个程序打包成exe,这个程序可以实现开机自启动,那么我们就可以在内部代码中...
  • Java中遍历Map集合的五种方式

    万次阅读 多人点赞 2021-01-28 23:26:04
    包含for循环遍历、entrySet使用iterator遍历,并且介绍了Java8新特性使用lambda表达式forEach遍历。
  • 很多api提供了java的post,get方式调用返回结果的接口,以下记录基础通用的发送请求并接收返回参数的方式:package com.taray.test; import java.io.BufferedReader; import java.io.IOException; import java.io....
  • java求数组中最大值最小值

    万次阅读 多人点赞 2017-07-18 22:22:11
    算法描述 默认最大值是第一个元素 默认最小值也是第一个元素 遍历数组元素,比较数组元素的值和默认的最大值,... 另一种方式是记下最大值最小值在数组中的下标,再通过下标输出最大最小值,推荐使用这种方式. 代码...
  • Javastruct 是什么 简而言之,Javastruct 是一个第三方库,用于像处理 C 或者 C++ 结构体那样处理 java 对象。也即利用 Javastruct 可以在 java 上实现类似于结构体的功能和操作。 Javastruct 的用途 在 java 或者 ...
  • Java枚举(Enum)类型使用的正确姿势

    千次阅读 2020-07-09 07:23:37
    基础使用 通过枚举类直接调用使用下面的常量,返回的类型也是枚举类型。代码如下: SeasonEnum season = SeasonEnum.SPRING; Assert.assertTrue(season.equals(SeasonEnum.SPRING)); Assert.assertTrue(season....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,724,881
精华内容 1,089,952
关键字:

java使用方式

java 订阅