创建对象 1.1 Java 包管理器 Java当中导入包语句 import 包含 + 类名 包名+类名组成了完整的包路径 import import java.time.LocalDate;// key,value的类型可以是任何Java对象 import java.util.Map; import java.util.HashMap; // key value 得是 Java 类型 Map< Map对象 Map<Integer,String> map = new HashMap<>(); map.put(1,"Monday"); map.put(2,"Tuesday"); map.put(3, map.put(5,"Friday"); map.put(6,"Saturday"); map.put(7,"Sunday"); map.get(key) String weekText = map.get(3) 3 public File getParentFile() 返回此抽象路径名的父路径名的抽象路径名,如果此路径名没有指定父目录,则返回 null。
目录 前言 一、字符类型(char) (1)字符类型基本介绍 (2)字符类型演示 (3)字符类型使用细节 二、编码了解 (1)Unicode编码(了解) (2)ASCLL编码(了解) (3)UTF-8 2)Java中还允许使用转义字符'\' 将其后的字符变为特殊的字符型常量。 3)编码0 - 127的字符都与ASCLL编码一样,所以说Unicode码兼容ASCLL码。 2)缺点:不能表示所有的字符 (3)UTF-8编码(了解) 1)UTF-8编码可以使用1-6个字节表示一个符号,根据不同的符号来改变字节的长度 2)使用大小可变的编码,字母占1个字节,汉字占3个字节 三 、基本数据类型转换 (1)自动类型转换 当Java程序在赋值或者运算时,精度小的数据类型会自动转换为精度大的数据类型,称为自动类型转换。
排序(SDUT 1582) import java.util.*; public class Main { public static void main(String[] args) { Scanner else System.out.print(" " + a[i]); } System.out.println(""); } } 期末考试之排名次(SDUT 2255) import java.util (int i = n - 1; i >= 0; i--) { System.out.println(a[i]); } } } 冒泡排序中数据交换的次数(SDUT 2554) import java.util 0) System.out.println("yes"); else System.out.println("no"); } } U 字符统计2(SDUT 1525) import java.util } } System.out.println((char) ans + " " + max); } } } V 传说中的数据结构(SDUT 2556) import java.util
(4)方法摘要: static void exit(int status) 终止当前正在运行的 Java 虚拟机。 static void gc() 运行垃圾回收器。 22、Runtime: (1)每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。 可以通过 getRuntime 方法获取当前运行时。 static Runtime getRuntime() 返回与当前 Java 应用程序相关的运行时对象 void exit(int status) 通过启动虚拟机的关闭序列,终止当前正在运行的 Java ;//导入一个静态方法 import static java.lang.Math.*; //导入一个类中的所有静态方法 **静态导入使用注意: 当类名重复时,需要制定具体的包名; 当方法重名时, (2)java中对数据的操作都是通过流的方式。 (3)java用于操作流的类都在io包中。 (4)按照流操作的数据的类型不同:分为字节流和字符流。字符流是为了方便中文的操作而来的。
(4)方法摘要: static void exit(int status) 终止当前正在运行的 Java 虚拟机。 static void gc() 运行垃圾回收器。 22、Runtime: (1)每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。 可以通过 getRuntime 方法获取当前运行时。 static Runtime getRuntime() 返回与当前 Java 应用程序相关的运行时对象 void exit(int status) 通过启动虚拟机的关闭序列,终止当前正在运行的 Java ;//导入一个静态方法 import static java.lang.Math.*; //导入一个类中的所有静态方法 **静态导入使用注意: 当类名重复时,需要制定具体的包名; 当方法重名时, (2)java中对数据的操作都是通过流的方式。 (3)java用于操作流的类都在io包中。 (4)按照流操作的数据的类型不同:分为字节流和字符流。字符流是为了方便中文的操作而来的。
// 局部变量 } } 变量命名规则 驼峰命名法,可参考阿里规范: https://github.com/alibaba/p3c 基本数据类型 Java有8个基本数据类型:byte、short Java的String严格来说不算基本数据类型,因为它其实是一个类,java.lang.String。 - Summer"; break; case 3: quarterLabel = "Q3 - Summer"; break; default System.out.println("Invalid month."); break; } 如果selector是null,会报空指针异常:NullPointerException 参考资料: Java Language Basics https://dev.java/learn/language-basics/
学习Io操作(3),javaIo文件的复制! package com.dufy.io; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream ; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; /** * * 练习
(相关阅读:java"小心机"(1)【资源彩蛋!】第4点类型转换) 2.+=的隐式转换 例1:short s1 = 1; s1 = s1 + 1;有错吗? (相关阅读:java"小心机"(1)【资源彩蛋!】 3.try{}里有一个return语句,代码执行顺序如何? private String name; public void ThisTest (String test){ this.test = test; } } 3. 2.访问父类的属性 3.访问父类的函数 4.访问父类的构造函数 必须使用super的时刻 1.父类覆盖了无参构造函数时 public class Father { public String name
51、java中实现多态的机制是什么? 答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。 答:static i = 10; //常量 class A a; a.i =10;//可变 54、什么是java序列化,如何实现java序列化? 57、在JAVA中,如何跳出当前的多重嵌套循环? 答:用break; return 方法。 java.awt java.io java.util java.sql常用的接口:Remote List Map Document NodeList线程编程方面 60、java中有几种方法可以实现一个线程 Java中的线程有四种状态分别是:运行、就绪、挂起、结束 68、简述synchronized和java.util.concurrent.locks.Lock的异同 ?
变量:变量是Java程序的一个基本存储单元。变量由一个标识符,类型及一个可选初始值的组合定义。此外,所有的变量都有一个作用域,定义变量的可见性,生存期。 ;通常定义在类中,可以在多个方法中使用;通常称为类常量;关键字在Java中,有一部分保留字是不能设置为类,变量或者方法的名称得;这部分称为Java保留字符;也叫Java关键字;JAVA中的关键字有以下几种 Java 的静态块是一组指令在类装载的时候在内存中由 Java ClassLoader 执行。静态块常用于初始化类的静态变量。大多时候还用于在类装载时候创建静态资源。 Java 不允许在静态块中使用非静态变量。一个类中可以有多个静态块;Java 可以嵌套使用静态类,但是静态类不能用于嵌套的顶层。静态嵌套类的使用与其他顶层类一样,嵌套只是为了便于项目打包。 例如,下面的两个定义是等价的:int al[] = new int[3]; int[] a2 = new int[3];这种数组声明格式主要是为了方便。
默认构造器(又名“无参”构造器)是没有形式参数的—它的作用是创建一个默认对象。如果你写的类中没有构造器,则编译器会自动帮你创建一个默认构造器。
基本类型 Java中一般通过new创建对象并将对象存储在“堆”里,并通过变量引用保存对象的地址,而对于基本类型,需要特殊对待,基本类型不用new来创建变量,而是创建一个并非是引用的“自动”变量。 这个变量直接存储的是“值”,并置于堆栈中,因此更加高效 Java回确定每种基本类型所占存储空间的大小,并且这个大小并不会随着机器硬件架构的变化而变化。 这也成为了Java比其他大多数语言编写的程序更具移植性的原因之一 ? 1个字节占8bits,所以 ? 如果需要进行不产生舍入误差的精确数字计算,需要使用BigDecimal folat类型的数值后面要有一个后缀F或f,没有的默认为double类型,也可以在数值后添加后缀D或者d,明确double类型 高精度数字 Java
3.下面这条语句一共创建了多少个对象:String s="a"+"b"+"c"+"d"; javac编译可以对字符串常量直接相加的表达式进行优化,不必要等到运行期去进行加法运算处理,而是在编译时去掉其中的加号 第一条语句打印的结果为false,第二条语句打印的结果为true String s1 = "a"; String s2 = s1 + "b"; String s3 = "a" + "b"; System.out.println (s2 == "ab"); System.out.println(s3 == "ab"); ------------------------------------------------------- 9.Java中的异常处理机制的简单原理和应用。 开始,还有如下一些线程池创建多线程的方式: ExecutorService pool = Executors.newFixedThreadPool(3) for(int i=0;i<10;i++){
String基础 1. String类又称作不可变字符序列。 2. String位于java.lang包中,Java程序默认导入java.lang包下的所有类。 3. 3. 3 4. 3. finalize方法,是Java提供给程序员用来释放对象或资源的方法,但是尽量少用。 · 方法的重载是指一个类中可以定义有相同的名字,但参数不同的多个方法。 抽象类为所有子类提供了一个通用模版,子类可以在这个模版基础上进行扩展,使用abstract修饰。 · 使用abstract修饰的方法为抽象方法必须被子类实现,除非子类也是抽象类。
《Java程序设计基础》 第3章手记 本章主要内容: 1. 数据类型 2. 变量 3. 基本类型变量 4. 数据类型的转换规则 5. 我们有C语言的基础,重点记忆与C语言不同的和新增的内容,你可以拿一本C语言的书在手边,一样的就按C语言来记,不一样的和新增的从现在开始记忆。 java.io.BufferedReader和java.io.BufferedWriter类各拥有8192字符的缓冲区。 数据输入方式二: 从Java SE 5版本之后,专门在java.util类库中增加了类Scanner来简化输入操作。 3.(推荐方法)在使用你的文本编辑器写好代码要保存的时候,设置保存为ANSI编码格式或者Unicode或者GBK2312编码格式(中国官方简体中文标准编码),这是一劳永逸的方法。
在开发或理解一个程序设计时,最好的方法之一就是将对象想象为“服务的提供者”,程序本身将向用户提供服务,它将通过调用其他对象提供的服务来实现这一目的。
Java提供了一组丰富的算术和逻辑运算符以及数学函数。 算术运算符 在Java中,使用算术运算符+、-、*、/表示加、减、乘、除运算。 下图给出了数值类型之间的合法转换 图中有6个实现箭头,表示无信息丢失的转换;另外有3个虚线箭头,表示可能有精度损失的转换。 否则,两个操作数都将被转换为int类型 强制类型转换 在Java中,允许进行这种数值之间的类型转换,当然,有可能会丢失一些信息。这种可能损失信息的转换要通过强制类型转换来完成。 在Java中也有:n++将变量n的当前值加1,n–则将n的值减1.++在前会先完成加1;++在后会使用变量原来的值。 关系和boolean运算符 Java包含丰富的关系运算符 相等使用两个等号== 不相等使用!
本片文章内容如下: 1、类加载器 2、"类"的生命周期 3、一个类载入过程 4、"类"结束生命周期 5、new 一个对象过程 6、总结 一、类加载器 (一)、概述 首先来看一下java程序的执行过程 (三)、委派模式 请参考Android插件化基础1-----加载SD上APK中的"双亲委托" 二、一个类生命周期 类从被加载到虚拟机内存中开始,直到卸载出内存为止,它的整个生命周期包括了:加载、验证、准备 3、字节码验证 主要工作是进行数据流和控制流分析,宝贝被校验类的方法在运行时不会做出危害虚拟机安全的行为。 解析类或者接口2.png 3、解析字段 ? 4、解析类方法 ? 5、解析接口方法 ? 四、"类"结束生命周期 在以下情况的时候,Java虚拟会结束生命周期 1、执行了System.exit()方法 2、程序正常执行结束 3、程序在执行过程中遇到了异常或错误而异常终止 4、由于操作系统出现错误而导致
Kit,Java开发工具包) ,是整个JAVA的核心,包括了Java运行环境JRE(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库 JVM(Java Virtual Machine,Java虚拟机), 是JRE的一部分。它是整个Java实现跨平台的最核心的部分,负责解释执行字节码文件,是可运行Java字节码文件的虚拟计算机。 、JVM 2.1 JDK JDK(Java Development Kit, Java开发工具包),JDK是提供给Java开发人员使用的。 它提供了Java的开发工具、编译、运行Java程序所需的各种工具和资源,包括Java编译器、Java运行时环境,以及常用的Java类库等,所以安装了JDK,就不用在单独安装JRE了。 其中 bin目录:Java工具的可执行文件,包括: java、Java编译器javac、反编译.class文件javap、密钥管理工具keytool、Java文档工具javadoc等。
("dog jump"); } } 2.创建一个名为Demo01.java的Java源文件,它包含主函数: class Demo01 { public static void main(String [] args) { Dog dog = new dog(); dog.name = "小白"; dog.age = 3; dog.color = "黑色"; dog.jump(); System.out.println("名字是:" + dog.name); } } 多对象的创建方法 创建一个名为Demo02.java的Java源文件,它包含主函数 static void main(String[] args) { Dog dog01 = new dog(); dog01.name = "小白"; dog01.age = 3; 创建一个名为Demo03.java的Java源文件,它包含主函数: 例子: class Demo03 { public static void main(String[] args) {