一、方法的重载:
1、重载的概念:在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。
2、重载的特点:与返回值无关,只看参数列表,且参数列表必须不同(参数个数或参数类型)。调用时,根据方法参数列表的不同来区别。
3、重载示例:
//返回两个整数的和 int add(int x,int y){ return x+y; } //返回两个小数的和 double add(double x,double y){ return x+y; }
二、方法的可变参数:
//下面采用数组形参来定义方法: public static void test(int a,String[] books); //可变个数形参来定义方法: public static void test(int a,String...books);
说明:
1、可变参数:方法参数部分指定类型的参数个数是可变多个
2、声明方式:方法名(参数的类型名...参数名)
3、可变参数方法的使用与方法参数部分使用数组是一致的
4、方法的参数部分有可变形参,需要放在形参声明的最后,如不可以public static void test(String...books,int a);
三、方法的参数传递:
1、方法必须有其所在类或对象调用才有意义。若方法中含有参数:
形参:方法声明时的参数
实参:方法调用时实际传递给形参的参数
2、java的实参值如何传入方法呢?
java里的方法的参数传递方式只有一种:值传递。即将实际参数值的副本(复制品)传入方法内,而参数本身不受影响
四、关键字——package
1、package语句作为java源文件的第一条语句,指明该文件中定义的类所在的包(若缺省该语句,则指定为无名包)。其格式为:
package 顶层包名.子包名;
举例:
packTest.java package p1; //指定类Test属于包p1 public class Test{ public void display(){ System.out.println("in method display"); } }
2、包对应于文件系统的目录,package语句中,用"."来指明包(目录)的层次;
3、包通常用小写单词,类名首字母通常大写
五、关键字——import
1、为使用定义在不同包中的java类,需要用import语句来引入指定包层次下所需要的类或全部类(.*)。import语句告诉编译器到哪里去寻找类。
2、语法格式:
import 包名.子包名
六、jdk中主要的包介绍
1、java.lang 包含一些java语言的核心类,如String、Math、Integer、System和Thread,提供常用的功能。
2、java.net 包含执行与网络相关的操作的类和接口。
3、java.io 包含能提供多种输入/输出功能的类。
4、java.util 包含一些实用工具类,如定义系统特性、接口的集合框架类、使用与日期日历相关的函数。
5、java.text 包含java格式化相关的类。
6、java.sql 包含了java进行JDBC数据库编程的相关类和/接口
7、java.awt 包含了构成抽象窗口工具集的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)
8、java.applet 包含applet运行所需的一些类。
七、JVM的内存模型
八、信息的封装和隐藏
java中通过将数据声明为私有的(private),再提供公共的(public)方法:getXxx()和setXxx()实现对该属性的操作,以实现述目的:
1、隐藏一个类中不需要对外提供的实现细节;
2、使用者只能通过事先定制好的方法来访问数据,可以方便的加入控制逻辑,限制对属性的不合理操作;
3、便于修改,增强代码的可维护性。