JAVA类,对象,方法
掌握类的声明和类的成员
熟悉类的构造方法及其使用
掌握对象的创建、销毁和使用
掌握 main() 方法、构造方法和析构方法的使用
熟悉 this 关键字的使用
了解系统提供的常用包
掌握如何声明和使用包
不善表演
都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,
展开
-
==与equals,String的equals()方法
==介绍它的作用是判断两个对象的地址是不是相等。即,判断两个对象是不是同一个对象(基本数据类型比较的是值,引用数据类型比较的是内存地址)。基本数据类型:byte,short,char,int,long,float,double,boolean。他们之间的比较,应用双等号(==),比较的是他们的值。引用数据类型:当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址(确切的说,是堆内存地址)。public class test { public static void main(Str原创 2020-09-28 11:49:40 · 203 阅读 · 0 评论 -
1.27 递归算法
程序调用自身的编程技巧称为递归(recursion),它做为一种算法在程序设计语言中广泛应用。Java 支持递归,在 Java 编程中,递归是允许方法调用自身调用的属性。调用自身的方法称为是递归的。递归的典型例子是数字的阶乘。数字 N 的阶乘是 1 到 N 之间所有整数的乘积。例如 3 的阶乘就是 1×2×3。下面的程序使用递归来计算数字的阶乘。public class Factorial { int fact(int n) { int result; if (n原创 2020-09-27 12:49:04 · 120 阅读 · 0 评论 -
1.26 Java使用自定义包
包的声明和使用非常简单,在了解基本语法之后,下面通过一个案例演示在 Java 程序中声明包,以及不同包之间类的使用。1)创建一个名为 com.dao 的包。2)向 com.dao 包中添加一个 Student 类,该类包含一个返回 String 类型数组的 GetAll() 方法。Student 类代码如下:package com.dao;public class Student { public static String[] GetAll() { String[] nam原创 2020-09-27 12:48:55 · 209 阅读 · 0 评论 -
1.25 包(package)详解
在编写 Java 程序时,随着程序架构越来越大,类的个数也越来越多,这时就会发现管理程序中维护类名称也是一件很麻烦的事,尤其是一些同名问题的发生。有时,开发人员还可能需要将处理同一方面的问题的类放在同一个目录下,以便于管理。为了解决上述问题,Java 引入了包(package)机制,提供了类的多层命名空间,用于解决类的命名冲突、类文件管理等问题。包允许将类组合成较小的单元(类似文件夹),它基本上隐藏了类,并避免了名称上的冲突。包允许在更广泛的范围内保护类、数据和方法。你可以在包内定义类,而在包外的代码不原创 2020-09-27 12:48:43 · 1890 阅读 · 0 评论 -
1.24 析构方法
析构方法与构造方法相反,当对象脱离其作用域时(例如对象所在的方法已调用完毕),系统自动执行析构方法。析构方法往往用来做清理垃圾碎片的工作,例如在建立对象时用 new 开辟了一片内存空间,应退出前在析构方法中将其释放。在 Java 的 Object 类中还提供了一个 protected 类型的 finalize() 方法,因此任何 Java 类都可以覆盖这个方法,在这个方法中进行释放对象所占有的相关资源的操作。对象的 finalize() 方法具有如下特点:垃圾回收器是否会执行该方法以及何时执行该方法原创 2020-09-27 12:48:34 · 577 阅读 · 0 评论 -
1.23 实例:查询个人信息
每个员工都会有自己的档案,主管可以查看在职员工的档案。使用 Java 创建一个员工实体类,然后通过构造方法创建一个名为“王洁”的员工,最后打印出员工档案信息。示例步骤如下。(1) 创建 Person 类,在该类中定义个人基本信息属性,并定义一个带有参数的构造方法,代码如下:public class Person { private String name; // 姓名 private int age; // 年龄 private String sex; // 性原创 2020-09-27 12:48:25 · 768 阅读 · 0 评论 -
1.22 构造方法
构造方法是类的一种特殊方法,用来初始化类的一个新的对象,在创建对象(new 运算符)之后自动调用。Java 中的每个类都有一个默认的构造方法,并且可以有一个以上的构造方法。Java 构造方法有以下特点:方法名必须与类名相同,包括大小写。可以有 0 个、1 个或多个参数构造方法不能在方法名前面定义方法类型,即不能定义void,也不能有返回值(不能有return语句)。默认返回类型就是对象类型本身构造方法不能自己调用,构造方法调用必须通过new语法,对象初始化的时候由系统自动调用。一个类中的构造原创 2020-09-27 12:48:14 · 192 阅读 · 0 评论 -
1.21 方法的可变参数(String...names)
在具体实际开发过程中,有时方法中参数的个数是不确定的。为了解决这个问题,在 J2SE 5.0 版本中引入了可变参数的概念。声明可变参数的语法格式如下methodName({paramList},paramType…paramName)其中,methodName 表示方法名称;paramList 表示方法的固定参数列表;paramType 表示可变参数的类型;… 是声明可变参数的标识;paramName 表示可变参数名称。注意:可变参数必须定义在参数列表的最后。例 1每次参加考试的人数是不固定的原创 2020-09-27 12:47:53 · 801 阅读 · 0 评论 -
1.20 main()方法
在 Java 中,main() 方法是 Java 应用程序的入口方法,程序在运行的时候,第一个执行的方法就是 main() 方法。main() 方法和其他的方法有很大的不同。下面先来看最简单的一个 Java 应用程序 HelloWorld,我们将通过这个例子讲解 Java 类中 main() 方法的奥秘,程序的代码如下:public class HelloWorld { public static void main(String args[]) { System.out.pri原创 2020-09-27 12:47:41 · 371 阅读 · 0 评论 -
1.19 final修饰符详解
final 在 Java 中的意思是最终,也可以称为完结器,表示对象是最终形态的,不可改变的意思。final 应用于类、方法和变量时意义是不同的,但本质是一样的,都表示不可改变,使用 final 关键字声明类、变量和方法需要注意以下几点:final 用在变量的前面表示变量的值不可以改变,此时该变量可以被称为常量。final用在方法的前面表示方法不可以被重写(子类中如果创建了一个与父类中相同名称、相同返回值类型、相同参数列表的方法,只是方法体中的实现不同,以实现不同于父类的功能,这种方式被称为方法重写原创 2020-09-27 12:47:30 · 308 阅读 · 0 评论 -
1.18 static的常见问题和使用误区
1)为什么要用”static“关键字?通常来说,用 new 创建类的对象时,数据存储空间才被分配,方法才供外界调用。有时候我们只想为特定域分配单一存储空间,不考虑要创建多少对象或者说根本就不创建任何对象,有时候我们想在没有创建对象的情况下也想调用方法。在这两种情况下,static 关键字,满足了我们的需求。2)”static“关键字是什么意思?Java 中是否可以覆盖(子类中如果创建了一个与父类中相同名称、相同返回值类型、相同参数列表的方法,只是方法体中的实现不同,以实现不同于父类的功能,这种方式被称为原创 2020-09-27 12:47:20 · 432 阅读 · 0 评论 -
1.17 import static静态导入
在 JDK 1.5 之后增加了一种静态导入的语法,用于导入指定类的某个静态成员变量、方法或全部的静态成员变量、方法。如果一个类中的方法全部是使用 static 声明的静态方法,则在导入时就可以直接使用 import static 的方式导入。静态导入使用 import static 语句,静态导入也有两种语法,分别用于导入指定类的单个静态成员变量、方法和全部静态成员变量、方法,其中导入指定类的单个静态成员变量、方法的语法格式如下:import static package.ClassName.field原创 2020-09-25 10:03:49 · 202 阅读 · 0 评论 -
1.16 static关键字(静态变量和静态方法)
在类中,使用 static 修饰符修饰的属性(成员变量)称为静态变量,也可以称为类变量,常量称为静态常量,方法称为静态方法或类方法,它们统称为静态成员,归整个类所有。静态成员不依赖于类的特定实例,被类的所有实例共享,就是说 static 修饰的方法或者变量不需要依赖于对象来进行访问,只要这个类被加载,Java 虚拟机就可以根据类名找到它们。调用静态成员的语法形式如下:类名.静态成员注意:static 修饰的成员变量和方法,从属于类。普通变量和方法从属于对象。静态方法不能调用非静态成员,编译原创 2020-09-25 10:03:40 · 312 阅读 · 0 评论 -
1.15 Java访问控制修饰符(public、 private、protected 和 friendly)
在 Java 语言中提供了多个作用域修饰符,其中常用的有 public、private、protected、final、abstract、static、transient 和 volatile,这些修饰符有类修饰符、变量修饰符和方法修饰符。本文将详细介绍访问控制修饰符。信息隐藏是 OOP 最重要的功能之一,也是使用访问修饰符的原因。在编写程序时,有些核心数据往往不希望被用户调用,需要控制这些数据的访问。对类成员访问的限制是面向对象程序设计的一个基础,这有利于防止对象的误用。只允许通过一系列定义完善的方法原创 2020-09-25 10:03:32 · 976 阅读 · 0 评论 -
1.14 Java注释:类、方法和字段注释
一个程序的可读性,关键取决于注释。如果一个程序想二次开发,要读懂前面的程序代码,就必须在程序中有大量的注释文档,所以对于一个优秀的程序员来说,学会在程序中适当地添加注释是非常重要的。注释除了帮助别人了解编写的程序之外,还对程序的调试、校对等有相当大的帮助。当程序具体运行时,计算机会自动忽略注释符号之后所有的内容。教程第二章中曾经提到过注释,读者也许印象不太深,在这里复习一遍。本节将简单地介绍类、方法、字段等地方的注释方法,这些地方的注释虽然简单但是在开发工作中却是非常重要的。注意:本节注释使用文档注原创 2020-09-25 10:03:24 · 126 阅读 · 0 评论 -
1.13 实例:用户修改密码
每一个应用系统都离不开用户模块。用户模块除了提供登录之外,还允许用户查看自己的信息和进行修改。本实例将创建一个用户类,然后再创建一个测试类调用用户类,实现修改密码的功能。本实例的用户类非常简单,仅包含用户名和密码两个属性。public class User { private String username; private String password; public String getUsername() { return username; } public void se原创 2020-09-25 10:03:03 · 515 阅读 · 0 评论 -
1.12 Java空对象(null)是怎么回事?
Java 语言支持两种数据类型,分别是基本数据类型和引用数据类型,而 null 是一种特殊的引用数据类型。本节主要介绍 Java 空对象是什么及如何判断对象是否为空。对象的实例化就是为对象开辟内存空间。例如以下 3 条语句Student stu = new Student(); // 语句1Student stu2; // 语句2stu2 = new Student(); // 语句3语句 1 先声明一原创 2020-09-25 10:02:55 · 2422 阅读 · 0 评论 -
1.11 对象的销毁
对象使用完之后需要对其进行清除。对象的清除是指释放对象占用的内存。在创建对象时,用户必须使用 new 操作符为对象分配内存。不过,在清除对象时,由系统自动进行内存回收,不需要用户额外处理。这也是 Java 语言的一大特色,某种程度上方便了程序员对内存的管理。Java 语言的内存自动回收称为垃圾回收(Garbage Collection)机制,简称 GC。垃圾回收机制是指 JVM 用于释放那些不再使用的对象所占用的内存。Java 语言并不要求 JVM 有 GC,也没有规定 GC 如何工作。不过常用的 JV原创 2020-09-25 10:02:48 · 189 阅读 · 1 评论 -
1.10 访问对象的属性和行为
每个对象都有自己的属性和行为,这些属性和行为在类中体现为成员变量和成员方法,其中成员变量对应对象的属性,成员方法对应对象的行为。在 Java 中,要引用对象的属性和行为,需要使用点(.)操作符来访问。对象名在圆点左边,而成员变量或成员方法的名称在圆点的右边。语法格式如下:对象名.属性(成员变量) // 访问对象的属性对象名.成员方法名() // 访问对象的方法例如,定义一个 Student 类,创建该类的对象 stu,再对该对象的属性赋值,代码如下:Student stu = new原创 2020-09-25 10:02:39 · 231 阅读 · 0 评论 -
1.9 匿名对象
经过前面的学习,我们知道创建对象的标准格式如下:类名称 对象名 = new 类名称();每次 new 都相当于开辟了一个新的对象,并开辟了一个新的物理内存空间。如果一个对象只需要使用唯一的一次,就可以使用匿名对象,匿名对象还可以作为实际参数传递。匿名对象就是没有明确的给出名字的对象,是对象的一种简写形式。一般匿名对象只使用一次,而且匿名对象只在堆内存中开辟空间,而不存在栈内存的引用。public class Person { public String name; // 姓名 pu原创 2020-09-23 10:28:17 · 106 阅读 · 0 评论 -
1.8 深入解析new运算符
”new“在 Java 中意思是”新的“,可以说是 Java 开发者最常用的关键字。在 Java 中 new 的操作往往意味着在内存中开辟新的空间,这个内存空间分配在内存的堆区。堆是用来存放由 new 创建的对象和数组,即动态申请的内存都存放在堆区。栈是用来存放在方法中定义的一些基本类型的变量和对象的引用变量。Java 中一般使用 new 来创建对象,它可以动态地为一个对象分配地址。它的通用格式如下:classname obj = new classname( );其中,obj 是创建的对象,原创 2020-09-23 10:28:07 · 314 阅读 · 0 评论 -
1.7 Java创建对象详解(显式创建和隐含创建)
对象是对类的实例化。对象具有状态和行为,变量用来表明对象的状态,方法表明对象所具有的行为。Java 对象的生命周期包括创建、使用和清除,本文详细介绍对象的创建,在 Java 语言中创建对象分显式创建与隐含创建两种情况。显式创建对象对象的显式创建方式有 4 种。1. 使用 new 关键字创建对象这是常用的创建对象的方法,语法格式如下:类名 对象名 = new 类名();2. 调用 java.lang.Class 或者 java.lang.reflect.Constuctor 类的 newlnst原创 2020-09-23 10:27:55 · 193 阅读 · 0 评论 -
1.6 this关键字详解(3种用法)
this 关键字是 Java 常用的关键字,可用于任何实例方法内指向当前对象,也可指向对其调用当前方法的对象,或者在需要当前类型对象引用时使用。this表示当前对象下面我们根据示例分别讲解 this 关键字的作用:this.属性名—调用本类中的属性,也就是类中的成员变量大部分时候,普通方法访问其他方法、成员变量时无须使用 this 前缀,但如果方法里有个局部变量和成员变量同名,但程序又需要在该方法里访问这个被覆盖的成员变量,则必须使用 this 前缀。例 1public class Studen原创 2020-09-23 10:27:43 · 4827 阅读 · 3 评论 -
1.5 成员方法的声明和调用,形参,实参
声明成员方法声明成员方法可以定义类的行为,行为表示一个对象能够做的事情或者能够从一个对象取得的信息。类的各种功能操作都是用方法来实现的,属性只不过提供了相应的数据。一个完整的方法通常包括方法名称、方法主体、方法参数和方法返回值类型,其结构如图 1 所示。成员方法一旦被定义,便可以在程序中多次调用,提高了编程效率。声明成员方法的语法格式如下:public class Test { [public|private|protected][static]<void|return_type>原创 2020-09-23 10:27:11 · 623 阅读 · 0 评论 -
1.4 Java创建一个学生类
创建一个表示学生的实体类 Student,其中有学生姓名、性别和年龄信息。要求使用属性来表示学生信息,最终编写测试代码。首先定义一个名为 Student 的类,代码如下:public class Student { // 学生类}在类中通过属性定义学生、性别和年龄,代码如下:public class Student { public String Name; // 学生姓名 public int Age; // 学生年龄 private boolean原创 2020-09-23 10:26:57 · 18147 阅读 · 0 评论 -
1.3 Java类的属性:成员变量的定义和声明
在 Java 中类的成员变量定义了类的属性。例如,一个学生类中一般需要有姓名、性别和年龄等属性,这时就需要定义姓名、性别和年龄 3 个属性。声明成员变量的语法如下:[public|protected|private][static][final]<type><variable_name>各参数的含义如下。public、protected、private:用于表示成员变量的访问权限。static:表示该成员变量为类变量,也称为静态变量。final:表示将该成员变量声明为常原创 2020-09-23 10:26:46 · 590 阅读 · 0 评论 -
1.1 对象的概念及面向对象的三个基本特征
面向对象简称 OO(Object Oriented),20 世纪 80 年代以后,有了面向对象分析(OOA)、 面向对象设计(OOD)、面向对象程序设计(OOP)等新的系统开发方式模型的研究。对 Java 语言来说,一切皆是对象。把现实世界中的对象抽象地体现在编程世界中,一个对象代表了某个具体的操作。一个个对象最终组成了完整的程序设计,这些对象可以是独立存在的,也可以是从别的对象继承过来的。对象之间通过相互作用传递信息,实现程序开发。对象的概念Java 是面向对象的编程语言,对象就是面向对象程序设计的原创 2020-09-23 10:26:24 · 2528 阅读 · 0 评论 -
1.2 Java类的定义
类是对象的抽象,对象是类的具体。类是描述了一组有相同特性(属性)和相同行为(方法)的一组对象的集合。对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类类是一个模板,它描述一类对象的行为和状态。类是 Java 中的一种重要的引用数据类型,也是组成 Java 程序的基本要素,因为所有的 Java 程序都是基于类的。在 Java 中定义一个类,需要使用 class 关键字、一个自定义的类名和一对表示程序体的大原创 2020-09-23 10:26:35 · 318 阅读 · 0 评论 -
1.12 Java数组使用binarySearch()方法查找指定元素
查找数组是指从数组中查询指定位置的元素,或者查询某元素在指定数组中的位置。使用 Arrays 类的 binarySearch() 方法可以实现数组的查找,该方法可使用二分搜索法来搜索指定数组,以获得指定对象,该方法返回要搜索元素的索引值。binarySearch() 方法有多种重载形式来满足不同类型数组的查找需要,常用的重载形式有两种。(1) 第一种形式如下:binarySearch(Object[] a,Object key);其中,a 表示要搜索的数组,key 表示要搜索的值。如果 key 包原创 2020-09-22 10:10:50 · 511 阅读 · 0 评论