java基础知识(三)java关键字】的更多相关文章

java  基础知识 三 变量 1.作用域 {} 包围起来的代码 称之为代码块,在块中声明的变量只能在块中使用 2.常量 就是固定不变的量,一旦被定义,它的值就不能再被改变. 3.变量 变量必须在程序中被定义(或声明)后才能使用,而且为每个变量确定一个具体类型 深层次含义:变量,是内存上一个数据存储空间,该区域有名称和数据类型,里面的数据可以在同一类型范围内不断变化,通过变量名获取变量值 变量声明:根据数据类型在内存中申请一块空间,并需要提供变量名 变量赋值:将数据存储至对应的内存空间 变量分类…
this关键字这里对java中this关键字的基础知识进行讲解,希望对热爱java的小伙伴有帮助!! /* this关键字代表了所属函数的调用者对象. this关键字的作用: 1. 如果存在同名成员变量与局部变量时,在方法内部默认是访问局部变量的数据,可以通过this关键字指定访问成员变量的数据. 2. 在一个构造函数中可以调用另外一个构造函数初始化对象. this关键字调用其他的构造函数要注意的事项: 1. this关键字调用其他的构造函数时,this关键字必须要位于构造函数中的第一个语句.…
1.逻辑运算符的基本用法 * A:逻辑运算符有哪些 &(逻辑与) |(逻辑或) !(逻辑非) ^(逻辑异或) &&(短路与) ||(短路或) * 注意事项: * a:逻辑运算符一般用于连接boolean类型的表达式或者值. * b:表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子. * 算术表达式:a + b * 比较表达式:a == b(条件表达式) * B:结论: * &逻辑与:有false则false. * |逻辑或:有true则true. * ^逻…
一.什么是java中的包 Java程序中,为了开发方便,会将功能相似的类放入一个文件夹中,这个文件结构就是包. 二.java中的包的命名规范 域名反写,例如:com.baidu. 三.java中的包的运用 package demo.test; public class Dog{ String name; int age; public void bark(){ // 汪汪叫 System.out.println("汪汪,不要过来"); } public void hungry(){ /…
类必须先定义才能使用.类是创建对象的模板,创建对象也叫类的实例化. 下面通过一个简单的例子来理解Java中类的定义: public class Dog { String name; int age; void bark()//汪汪叫 { System.out.println("汪汪,不要过来"); } void hungry() { System.out.println("主人,我饿了"); } } 对示例的说明: 1.public 是类的修饰符,表明该类是公共类,…
Java注解含义: Java注解,顾名思义,注解,就是对某一事物进行添加注释说明,会存放一些信息,这些信息可能对以后某个时段来说是很有用处的.Java注解又叫java标注,java提供了一套机制,使得我们可以对方法.类.参数.包.域以及变量等添加标准(即附上某些信息).且在以后某个时段通过反射将标注的信息提取出来以供使用. 样例(实现一个自己的注解): import java.lang.annotation.ElementType; import java.lang.annotation.Ret…
常量就是从程序开始运行到结束都不变的量.在 Java 程序设计中,使用关键字“final”来声明一个常量,例如下面的程序代码. 这里的 x 是一个常量,但是是在某个方法内的常量,也可以称为成员常量(作者给它取的名字) public class var { public static void main(String[] args){ final int X=20; System.out.println("常量 X="+X); } } 运行结果是:常量 X=20 如果要声明一个类常量,就…
1. Java 中的异常 前言:Java 中的异常处理是处理程序运行错误时的强大机制之一,它可以保证应用程序的正常流程. 首先我们将了解java异常.异常的类型以及受查和非受查异常之间的区别. 1.1 什么是异常? 字面意义:异常是一种不正常的情况. 在 java 中,异常是扰乱程序正常流程的事件,它是在程序运行时抛出的对象. 1.2 什么是异常处理? 异常处理一种在运行时解决程序错误的机制,例如 ClassNotFound.IO.SQL.Remote 等. 1.2.1 异常处理的优势 异常通常…
作为一个Developer,Java集合类是我们在工作中运用最多的.最频繁的类.相比于数组(Array)来说,集合类的长度可变,更加适合于现代开发需求: Java集合就像一个容器,可以存储任何类型的数据,也可以结合泛型来存储具体的类型对象.在程序运行时,Java集合可以动态的进行扩展,随着元素的增加而扩大.在Java中,集合类通常存在于java.util包中. Java集合主要由2大体系构成,分别是Collection体系和Map体系,其中Collection和Map分别是2大体系中的顶层接口.…
Java集合主要由2大体系构成,分别是Collection体系和Map体系,其中Collection和Map分别是2大体系中的顶层接口. 今天主要讲:Map主要有二个子接口,分别为HashMap.TreeMap. 继承关系图: Map的整体特点: 1. 键值对存放<key , value> 2. 遍历需要使用迭代器:Iterator 常用Map HashMap import java.util.HashMap; import java.util.Map; public class var {…
2. 定义获取省份的方法,创建一个Map集合,将上一步得到的映射集合赋值给它,使用Map集合的keySet()方法获取该集合中的所有键对象组成的Set 集合,即为省分集合,创建一个Object型一维数组,使用Set接口的toArray()方法将Set集合转换为数组,返回此数组作为省份选择下拉列表的参数. 3. 使用JComboBox类的setModel()方法为省份下拉列表添加省份信息,参数即为上一步中的获取省份方法. 4. 定义根据省份获取市/县的方法,创建一个Map集合,将步骤1中得到的映射…
* Returns an image stored in the file at the specified path * @param path String The path to the image file * @return Image The image stored in the file at the specified path */ public static Image getImage(String path) { return getImage("default&quo…
Java实现Map集合二级联动 Map集合可以保存键值映射关系,这非常适合本实例所需要的数据结构,所有省份信息可以保存为Map集合的键,而每个键可以保存对应的城市信息,本实例就是利用Map集合实现了省市级联选择框,当选择省份信息时,将改变城市下拉选择框对应的内容. 思路分析: 1. 创建全国(省,直辖市,自治区)映射集合,即LinkedHashMap对象,使用Map接口的put()方法向集合中添加指定的省与城市的映射关系,其中值为String型一维数组. 代码如下: CityMap.java i…
Java IO概念 1. 用于设备之间的数据传输. 2. Java 将操作数据流的功能封装到了IO包中. 3. 数据流流向分:输入流和输出流,操作对象为文件. 4. 流按照操作数据分:字节流(通用)和字符流. 5. 将计算机语言:二进制数据转换成文件显示到电脑上. IO包:继承关系图: 字符流: Reader :读取字符流,方法见API. Writer :写入字符流,方法见API. 案例(Writer ): import java.io.*; public class var { public…
接触Lambda表达式的时候,第一感觉就是,这个是啥?我居然看不懂,于是开始寻找资料,必须弄懂它. 先来看一个案例: @FunctionalInterface public interface MyLamda { void test1(String y); } import demo.knowledgepoints.Lambda.inf.MyLamda; public class LambdaTest { public static void main(String[] args) { MyLa…
1:对象的4种引用:强.软.弱.虚 强引用:如果一个对象具有强引用,那垃圾回收器绝不会回收它.当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足的问题.如: Myclass my=new MyClass():此时的my对象拥有强引用,不会回收. 软引用:如果一个对象只具有软引用,则内存空间足够,垃圾回收器就不会回收它:如果内存空间不足了,就会回收这些对象的内存.只要垃圾回收器没有回收它之前,该对象就可以被程序…
static 特点: 随着类的加载而加载 优先于对象存在 被所有对象所共享 可以直接被类名调用 注意点: 静态方法只能访问静态方法 但是非静态成员可以直接访问静态成员 静态方法中不可以使用this ,super关键字 主方法(main)是静态的(可以利用类名调用静态的main方法,但是会陷入死循环,导致内存溢出,jvm自动停止) 用static修饰的成员表示它属于这个类共有,而不是属于该类的单个实例 static修饰的字段和方法,既可以通过类名调用,也可以用实例调用,没有static 修饰的字段…
super可以理解为是指向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类. super也有三种用法: 1.普通的直接引用 与this类似,super相当于是指向当前对象的父类,这样就可以用super.xxx来引用父类的成员. 2.子类中的成员变量或方法与父类中的成员变量或方法同名 class Country { String name; void value() { name = "China"; } } class City extends Country { S…
static 修饰符能够与变量.方法一起使用,表示是“静态”的. 静态变量和静态方法能够通过类名来访问,不需要创建一个类的对象来访问该类的静态成员,所以static修饰的成员又称作类变量和类方法.静态变量与实例变量不同,实例变量总是通过对象来访问,因为它们的值在对象和对象之间有所不同. 请看下面的例子: public final class Demo { static int i = 10; int j; Demo() { this.j = 20; } public static void ma…
在 Java 中,声明类.变量和方法时,可使用关键字 final 来修饰.final 所修饰的数据具有“终态”的特征,表示“最终的”意思.具体规定如下: final 修饰的类不能被继承. final 修饰的方法不能被子类重写. final 修饰的变量(成员变量或局部变量)即成为常量,只能赋值一次. final 修饰的成员变量必须在声明的同时赋值,如果在声明的时候没有赋值,那么只有 一次赋值的机会,而且只能在构造方法中显式赋值,然后才能使用. final 修饰的局部变量可以只声明不赋值,然后再进行…
static 特点: 随着类的加载而加载 优先于对象存在 被所有对象所共享 可以直接被类名调用 使用注意: 静态方法只能访问静态成员 但是非静态成员可以直接访问静态成员 静态方法中不可用使用this,super关键字 主方法(main)是静态的(可以利用类名去调用静态的main方法,但是会陷入死循环,导致内存溢出,jvm自动停止) 用static修饰的成员表示它属于这个类共有,而不是属于该类的单个实例 static修饰的字段和方法,既可以通过类调用,也可以使用实例调用,没有static修饰的字段…
Java 流(Stream).文件(File)和IOJava.io 包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io 包中的流支持很多种格式,比如:基本类型.对象.本地化字符集等等. 一个流可以理解为一个数据的序列.输入流表示从一个源读取数据,输出流表示向一个目标写数据 http://www.runoob.com/java/java-files-io.html @Testpublic void testFileStream() throws Excep…
this 关键字用来表示当前对象本身,或当前类的一个实例,通过this可以调用对象的所有方法和属性. 例如: public class Demo { private int x = 10; private int y = 15; public void sum(){ //通过this获取成员变量,this可以省略. int z = this.x + this.y; System.out.println("x+y = "+z); } public static void main(Str…
volatile: 让变量每次在使用的时候,都从主存中取. volatile具有synchronized关键字的“可见性”,但是没有synchronized关键字的“并发正确性”,也就是说不保证线程执行的有序性. 也就是说,volatile变量对于每次使用,线程都能得到当前volatile变量的最新值.但是volatile变量并不保证并发的正确性. 1. volatile的可见性: 案例: public class TestVolatile { private static boolean st…
一.Java标识符程序员对程序中的各个元素加以命名时使用的命名记号称为标识符(identifier).Java语言中,标识符是以字母,下划线(_),美元符($)开始的一个字符序列,后面可以跟字母,下划线,美元符,数字.例如,identifier,userName,User_Name,_sys_val, $change为合法的标识符,而2mail room#,class 为非法的标识符.二.Java保留字具有专门的意义和用途,不能当作一般的标识符使用,这些标识符称为保留字(reserved wor…
一 成员变量 成员变量是指类的一些属性定义,标志类的静态特征,它的基本格式如下: [访问修饰符][修饰符][类型][属性名称]= [初始值] 访问修饰符:public(公共的):protected(受保护的):无修饰符和private(私有的). 修饰符:对属性特征的描述:如static,final 等等. 类型:属性的数据类型,可以是任意类型. 属性名称:任何合法标识符. 初始值:赋值给属性的初始值. 举例:public static int index = 0; 二 成员方法 成员方法就是对…
继承时类和类之间的关系,是一个很简单很直观的概念,与显示生活中的继承(例如儿子继承了父亲财产)类似. 继承可以理解为一个类从另一个类中获取方法和属性的过程.如果类B继承于类A,那么类B就拥有类A的属性和方法. 继承使用extends关键字. 例如我们定义了一个People: public class People { public String name;//姓名 public String age;//年龄 public String sex;//属性 public void say(){ S…
按照规划,从本篇开始我们开启『并发』系列内容的总结,从本篇的线程开始,到线程池,到几种并发集合源码的分析,我们一点点来,希望你也有耐心,因为并发这块知识是你职业生涯始终绕不过的坎,任何一个项目都或多或少的要涉及一些并发的处理. 这一系列文章只能算是对并发这块基本理论知识的一个总结与介绍,想要成为并发高手,必然是需要通过大规模并发访问的线上场景应用,或许以后我有了相关经验了,再给你们做一点分享吧. 基本的进程线程概念 进程和线程算是操作系统内两个很基本.很重要的概念了,进程是操作系统中进行保护和资…
什么是泛型?为什么要使用泛型? 泛型,即“参数化类型”.一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参.那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参). 泛型的本质是为了参数化类型(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型).也就是说在泛型使用过程中,操作的数据类型被指定为一个参数,这种参数类型可以用在类…
java中String.StringBuffer.StringBuilder是编程中经常使用的字符串类,他们之间的区别也是经常在面试中会问到的问题.现在总结一下,看看他们的不同与相同. 1.可变与不可变 String类中使用字符数组保存字符串,如下就是,因为有“final”修饰符,所以可以知道string对象是不可变的. private final char value[]; StringBuilder与StringBuffer都继承自AbstractStringBuilder类,在Abstra…