java23

1.包:
相同的类名可以存在于不同的包内,避免了名字冲突
包之间可以限定权限:根据不同的修饰符可以确定是否能访问其它包里的类
package包名.子包名.子子包
包名:--1--遵循标识符的规范:不可以以数字开头,不能使用关键字
--2--全部小写
--3--企业开发中包名使用公司的域名,不过顺序要倒着写
--4--在代码中类的简单名称:直接是类名
类的全限定名称:包名.类名

2.import 关键字(导包操作)
shift+ctrl+o调用其他的包
数组的排序

Arrays.sort(数组名称);//将数组中的元素重新排序后,把内存地址重新赋给数组
打印格式:System.out.println(Arrays.toString (数组名称));

3.静态导入:想在此包里直接调用其他包里的方法。去掉类名
格式:import static类的全限定名称.(末尾加上)static成员名称
eg:

原来:
import java.util.Arrays;
Arrays.sort();
静态导入后:
import static.java.util.Arrays.;
sort();
但不适用于toString方法

4.封装:
信息隐藏:把不需要让外界知道的知识隐藏起来
将对象的状态和行为看成一个统一的整体
优点:
信息隐藏,不向外界暴露具体实现细节
保证数据的安全性
保证数据的合理性
将对象的状态和方法封装在一个类中,提高数据的复用性
优点一:调用方便

将用户登陆的方法和封装两种形式作对比

**我只想知道用户的名字年龄**

public class 方法 {
	static void commit(String name,int age,String sex) {    
		System.out.println(name);
		System.out.println(age);
	}
	public static void main(String[] args) {
		commit("ww",1,"");      //性别也必须要占个位置
	}
}
【ww
1】

class User{
	String name ;
	int age;
	String sex;
	void image(User user) {
		user.name="zs";
		user.age =1;
		System.out.println(user.name);
		System.out.println(user.age);
	}
}
public class 封装 {
	public static void main(String[] args) {
		User user1=new User();
		user1.image(user1);     //只需要调用类中的方法
	}
}
【zs
1】

优点二:
保证数据的合理性

**年龄必须大于0**
class User1{
	String name;
	int age;
	void setAge(int a) {
		age=a;
		System.out.println(a);
	}
}
public class 封装2 {
public static void main(String[] args) {
	User1 ww=new User1();
	ww.setAge(-20);
}
}
【-20】
class User1{
	String name;
	int age;
	void setAge(int a) {
		age=a;
		if(a>0) 
			System.out.println(a);
		else
			System.out.println("不合法");
	}
}
public class 封装2 {
public static void main(String[] args) {
	User1 ww=new User1();
	ww.setAge(-20);
}
}
【不合法】

5.一个包中可以有多个类,但只有一个public

posted @ 2019-02-03 00:28  不断寻找  阅读(216)  评论(0编辑  收藏  举报