黑马程序员----java基础增强上
2013-07-13 23:48
204 查看
ASP.Net+Android+IO开发S、.Net培训、期待与您交流!
Java基础提高篇笔记
(一)使用集成开发环境:ide---itegrity developement environment 集成开发环境
1、MyEclipse的基础设置
1>、在MyEclipse中可以通过单击wendow->preference打开Myeclipse的基础设置选项,其中在java选项下面可以设置编译器(Compiler : 即jvm的路径)并且可以设置安装的Jre路径;
2>、当我们开发web程序时,我们可以通过设置Myeclipse中的服务器(server)选项,将我们外部的tomcat设置为服务器;
3>、我们可以在General中设置一些基础配置,如文字的大小、字体编码方式等
(在搜索框中输入Text或者单击General节点下的Appearance选择Colors and Front选项,在basic中选择Text Font)
4>、创建快捷键的设置,在Myeclipse中可以通过windows-->Preferences-->General-->keys来设置快捷键,如内容提示的设置Content Assist,将原来的设置删除,
在下方的Binding中按下ALt键+/键
2、在建工程,类,定义变量时,一定要用相应的单词来定义,这样提高程序的可读性;包名的定义要以所在的公司名为名
3、在工作目录下设置java的编译器和运行环境,可以将工作目录的配置,同时我们也可以设置java的工程的编译器和运行环境,
这是在工程上右键-->perferences以后操作和设置目录的编译器运行器相同
4、Myeclipse如何配置模板
在首选项中选择java-->edit-->template $(line_selected)//将当前内容写到这里
while (${en:var(java.util.Enumeration)}.hasMoreElements()) {
${type:argType(en)} ${elem:newName(type)} = (${type}) ${en}.nextElement();//循环体的执行,执行赋值功能
${cursor}//设置光标的位置
}
5、import工程,在myeclipse中导入已经写好的的工程文件,在Package Explorer中右键import,general中选择已存在工作空间的工程即可选则工程的目录,导入成功以后,应该查看
工程的java编译环境是否与本机的jdk是同一个版本,不同是应该配置java的编译器(注:java低版本编译的class文件,java高版本可以执行,而更低的版本不能执行此class文件)
(二)jdk1.5的新特性
1、用import导入静态方法
在java中如果一个类的某一个方法为静态方法,则可以通过import static java.lang.Math.*即可将java.lang包下的Math类下的所有静态方法导入,在访问这些静态方法时我们就可以
省略类名如以下例子package com.itheima.test;//判断一个整数是否为质数
public class Prime {
public static boolean isPrime(int a)
{
boolean flag = false;
if(a == 2)
flag = true;
else if(a>2)
{
int i = 0;
for( i =2; i<=(int)Math.sqrt(a);i++)
{
if(a%i == 0)
{
flag = false;
break;
}
}
if(i>(int)Math.sqrt(a))
{
flag = true;
}
}
return flag;
}
}
package com.itheima.ce;
import static com.itheima.test.Prime.isPrime;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int i = 10;
System.out.println(isPrime(i));//调用Prime类中的静态方法isPrime(),jdk1.5以后才支持静态导入功能
}
}
2、jdk1.5的第二个新特性:可变长度的参数,在java1.5以后支持可变长度的形参(注:可变形参为相同类型的对象)
如 public int[] executeBatch(String sql,Object[]...params)throws SQLException。这样我们可以实现方法的重载
3、jdk1.5的第三个新特性:增强的for循环功能,其语法为 for(type tem:tems);
注:迭代变量必须在()中定义,类型为type对应类型;集合变量可以是数组,或者是Iterable集合类的对象
File files[] = new File(path).listFiles();
for(File fl : files)//增强的for循环功能
{
System.out.println(fl.getName());//将目录下的文件名打印出来
}
4、jdk1.5的第三个新特性为:自动拆箱和自动装箱主要是针对java中基本数据类型(这是一个享缘设计模式)
自动装箱:就是将一个整形的值自动封装为Integer对象 Integer i1 = 12(注:当一个整数在-128~127之间时,一旦创建类对象,这个对象将保存在缓冲区中,当再次使用时,不在创建新对象);
对于一个字符串“abc”可以自动封装为String类型的对象
自动拆箱:将基本类型的对象自动拆箱,Integer对象自动拆箱为int类型;
例如 Integer i1 = 12;Integer i2= 12; 则i1=i2;但是Integer i3= 132; Integer i4= 132; 此时 i3与i4不是同一个对象
5、java的枚举和C++中的定义格式差不多,它提供了一些方法:
对于枚举类有获得它的对象的name,对象的在列表中的序列的ordinal方法,枚举类型的valueOf方法返回带指定名称的指定枚举类型的枚举常量
类的values方法可以获得该枚举类型的值的数组
对于枚举类型还可以定义构造函数,但是枚举类中的所有成员都是该枚举类型的对象,可以用构造函数创建该枚举类型中的成员:
public enum WeekDay
{
SUN(1),MON()
public WeekDay(){System.out.println("Frist");}
public WeekDay(int day){System.out.println("Second");}//创建带参数的构造函数
}
枚举类型同样可以有抽象函数,但是在每个‘成员’创建时应该将该抽象方法实现
public enum WeekDay
{
SUN{
public WeekDay nextWDay()
{
return MON;
}
}
SUN{
public WeekDay nextWDay()
{
return SUN;
}
}
public abstract WeekDay nextWDay();
}
6、java的反射机制:
(1)、Class是java中一种用于描述java中类的信息的类,注意在java中class为java中定义类的关键词,而Class是java中获得类的信息的一个类,
如类名,包名等等
Class的对象指向内存中类的字节码,
Class clazz1 = Date.class;(或则clazz = date1.getclass(),or Class.forName("java.util.Date")),isPrimitive()判断一个字节码是否为基本类型的字节码
判断一个基本类型是否为某个包装类型可以用包装类型的TYPE属性判别,例 double.class =Double.TYPE;在java.lang.reflect包下的field,Method,Constructor类共同完成反射的操作
ASP.Net+Android+IO开发S、.Net培训、期待与您交流!
Java基础提高篇笔记
(一)使用集成开发环境:ide---itegrity developement environment 集成开发环境
1、MyEclipse的基础设置
1>、在MyEclipse中可以通过单击wendow->preference打开Myeclipse的基础设置选项,其中在java选项下面可以设置编译器(Compiler : 即jvm的路径)并且可以设置安装的Jre路径;
2>、当我们开发web程序时,我们可以通过设置Myeclipse中的服务器(server)选项,将我们外部的tomcat设置为服务器;
3>、我们可以在General中设置一些基础配置,如文字的大小、字体编码方式等
(在搜索框中输入Text或者单击General节点下的Appearance选择Colors and Front选项,在basic中选择Text Font)
4>、创建快捷键的设置,在Myeclipse中可以通过windows-->Preferences-->General-->keys来设置快捷键,如内容提示的设置Content Assist,将原来的设置删除,
在下方的Binding中按下ALt键+/键
2、在建工程,类,定义变量时,一定要用相应的单词来定义,这样提高程序的可读性;包名的定义要以所在的公司名为名
3、在工作目录下设置java的编译器和运行环境,可以将工作目录的配置,同时我们也可以设置java的工程的编译器和运行环境,
这是在工程上右键-->perferences以后操作和设置目录的编译器运行器相同
4、Myeclipse如何配置模板
在首选项中选择java-->edit-->template $(line_selected)//将当前内容写到这里
while (${en:var(java.util.Enumeration)}.hasMoreElements()) {
${type:argType(en)} ${elem:newName(type)} = (${type}) ${en}.nextElement();//循环体的执行,执行赋值功能
${cursor}//设置光标的位置
}
5、import工程,在myeclipse中导入已经写好的的工程文件,在Package Explorer中右键import,general中选择已存在工作空间的工程即可选则工程的目录,导入成功以后,应该查看
工程的java编译环境是否与本机的jdk是同一个版本,不同是应该配置java的编译器(注:java低版本编译的class文件,java高版本可以执行,而更低的版本不能执行此class文件)
(二)jdk1.5的新特性
1、用import导入静态方法
在java中如果一个类的某一个方法为静态方法,则可以通过import static java.lang.Math.*即可将java.lang包下的Math类下的所有静态方法导入,在访问这些静态方法时我们就可以
省略类名如以下例子package com.itheima.test;//判断一个整数是否为质数
public class Prime {
public static boolean isPrime(int a)
{
boolean flag = false;
if(a == 2)
flag = true;
else if(a>2)
{
int i = 0;
for( i =2; i<=(int)Math.sqrt(a);i++)
{
if(a%i == 0)
{
flag = false;
break;
}
}
if(i>(int)Math.sqrt(a))
{
flag = true;
}
}
return flag;
}
}
package com.itheima.ce;
import static com.itheima.test.Prime.isPrime;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int i = 10;
System.out.println(isPrime(i));//调用Prime类中的静态方法isPrime(),jdk1.5以后才支持静态导入功能
}
}
2、jdk1.5的第二个新特性:可变长度的参数,在java1.5以后支持可变长度的形参(注:可变形参为相同类型的对象)
如 public int[] executeBatch(String sql,Object[]...params)throws SQLException。这样我们可以实现方法的重载
3、jdk1.5的第三个新特性:增强的for循环功能,其语法为 for(type tem:tems);
注:迭代变量必须在()中定义,类型为type对应类型;集合变量可以是数组,或者是Iterable集合类的对象
File files[] = new File(path).listFiles();
for(File fl : files)//增强的for循环功能
{
System.out.println(fl.getName());//将目录下的文件名打印出来
}
4、jdk1.5的第三个新特性为:自动拆箱和自动装箱主要是针对java中基本数据类型(这是一个享缘设计模式)
自动装箱:就是将一个整形的值自动封装为Integer对象 Integer i1 = 12(注:当一个整数在-128~127之间时,一旦创建类对象,这个对象将保存在缓冲区中,当再次使用时,不在创建新对象);
对于一个字符串“abc”可以自动封装为String类型的对象
自动拆箱:将基本类型的对象自动拆箱,Integer对象自动拆箱为int类型;
例如 Integer i1 = 12;Integer i2= 12; 则i1=i2;但是Integer i3= 132; Integer i4= 132; 此时 i3与i4不是同一个对象
5、java的枚举和C++中的定义格式差不多,它提供了一些方法:
对于枚举类有获得它的对象的name,对象的在列表中的序列的ordinal方法,枚举类型的valueOf方法返回带指定名称的指定枚举类型的枚举常量
类的values方法可以获得该枚举类型的值的数组
对于枚举类型还可以定义构造函数,但是枚举类中的所有成员都是该枚举类型的对象,可以用构造函数创建该枚举类型中的成员:
public enum WeekDay
{
SUN(1),MON()
public WeekDay(){System.out.println("Frist");}
public WeekDay(int day){System.out.println("Second");}//创建带参数的构造函数
}
枚举类型同样可以有抽象函数,但是在每个‘成员’创建时应该将该抽象方法实现
public enum WeekDay
{
SUN{
public WeekDay nextWDay()
{
return MON;
}
}
SUN{
public WeekDay nextWDay()
{
return SUN;
}
}
public abstract WeekDay nextWDay();
}
6、java的反射机制:
(1)、Class是java中一种用于描述java中类的信息的类,注意在java中class为java中定义类的关键词,而Class是java中获得类的信息的一个类,
如类名,包名等等
Class的对象指向内存中类的字节码,
Class clazz1 = Date.class;(或则clazz = date1.getclass(),or Class.forName("java.util.Date")),isPrimitive()判断一个字节码是否为基本类型的字节码
判断一个基本类型是否为某个包装类型可以用包装类型的TYPE属性判别,例 double.class =Double.TYPE;在java.lang.reflect包下的field,Method,Constructor类共同完成反射的操作
ASP.Net+Android+IO开发S、.Net培训、期待与您交流!
相关文章推荐
- 黑马程序员————java基础--------JDK1.5新特性之泛型、自动拆装箱、增强for、静态导入、可变参数
- 黑马程序员_java基础增强2
- 黑马程序员——Java基础---集合(泛型及增强for)
- 黑马程序员--Java基础加强(2)-- JDK1.5新特性之可变参数,增强for,自动拆装箱,枚举
- 黑马程序员_毕向东JAVA基础_集合(3)Map&Collections&Arrays&增强for循环
- 黑马程序员_java基础增强
- 黑马程序员——Java基础---集合(Collection接口、List接口及其子类、增强for)
- 黑马程序员---JAVA基础增强
- 黑马程序员-java基础增强_常用类
- 黑马程序员--JAVA基础加强之可变参数与增强for循环
- 黑马程序员----java基础增强下
- 黑马程序员:基础加强(可变参数、增强for、枚举、javabBean、BeanUtils、注解、泛型)
- 黑马程序员 Java基础增强for循环 很重要
- 黑马程序员_Java基础增强_jdk1.5新特性(2) 反射(1)
- 黑马程序员---2015.6.21.java基础笔记---TreeSet---HashSet---HashMap
- 黑马程序员——Java基础---面向对象代码块和继承和this和super和重写和重载和final
- 黑马程序员——Java基础---抽象类和接口的区别
- 黑马程序员——JAVA基础----多态、抽象类和接口
- 黑马程序员_Java基础加强之JDK1.5的新特性
- 黑马程序员——Java语言基础组成(一)