java IDE常用快捷键以及包以及封装细节

本文介绍了Java编程中常用的编辑器快捷键,如删除、复制行及自动补全代码,并详细讲解了包的概念、作用、命名规则和导入方式。包用于组织类,提高代码管理效率,同时讨论了访问修饰符及其访问范围。文章还通过案例展示了如何使用Arrays排序数组,并探讨了面向对象的封装特性,包括属性的私有化、setter和getter方法的实现。最后,提到了构造器在封装中的应用。
摘要由CSDN通过智能技术生成

1、删除光标当前行,ctrl+d

2、向下复制光标所在当前行,ctrl+alt+向下光标,如果后面加的向上光标即向上复制光标所在当前行

3、补全代码,alt+/

4、添加注释与取消注释,ctrl+/,第一次按下即进行注释,第二次按下即取消,也可进行块的选中

包的作用:

1、区分相同名字的包

2、当类很多时,可以很好的管理类

3、控制访问范围

包的本质分析:

实际上是创建不同文件夹或目录来保存类的文件

包的命名

命名规则:

只能包含数字、字母、下划线、点且不能用数字开头,不能是关键字或保留字

命名规范:

一般是小写字母+点一般为:

com.公司名.项目名.业务模块名

常用包:

java.lang.*        //lang包为基本包,默认引入,不需要重复引入

java.util.*          //util包为系统开发包,工具类

java.net.*          //网络包,做网络开发

java.awt.*          //做java的GUI界面开发

这里的*号为通配符,如果像上述包名直接进行引用则相当于将该包内的所有类进行导入

包的导入:

import 包名;

尽量用到哪个包就进行哪个包的导入,少使用’*‘的导入方式

案例:利用包内的方法对数组进行排序

        int []arr= {-1,-3,5,1,6,7};
		//新建一个已知数组;
		Arrays.sort(arr);//导入java.util.Arrays这个包即可使用该Arrays
                         //类中的方法sort,调用一次后该数组就排序完成了
		for(int i=0;i<arr.length;i++) {//进行输出
			System.out.print(arr[i]+" ");
		}

输出结果:

 包的注意事项以及细节:

1)package的作用是声明当前类所在的包,需放在class的最上面,一个类中最多只有一句package

2)import指令位置当放在package的下方,在类定义前面,而且有多句且没有顺序要求

访问修饰符:

java提供四种访问修饰符号控制方法和属性(成员变量)的访问权限(范围):

a: 公开级别:使用public修饰,对外公开

b: 受保护级别:使用protected修饰,对子类以及同一包中的类进行公开

c: 默认级别:没有修饰符号,向同一个包的类进行公开

d: 私有级别:使用private修饰,只有类本身可以进行访问,不对外公开

访问范围:

访问级别修饰符同类同包子类不同包
公开public
受保护protectedX
默认无修饰符XX
私有privateXXX

使用的注意事项:

1)修饰符可以用来修饰类中的属性,成员方法以及类

2)只有默认以及public才能修饰类,并遵循上述的访问特点

3)成员方法的访问规则与属性完全一样

面向对象三特征:封装、继承、多态

封装:将抽象出的数据(属性)和对数据的操作(方法)封装在一起,数据被保护在内部,程序的其他部分只有通过被授权的操作(方法),才能对数据进行操作

封装的好处:

a: 隐藏实现的细节

b: 可以对数据进行验证,保证安全合理      

封装步骤:

1)将属性进行私有化

2)提供一个公共的set方法,用于对属性判断与直接赋值

3)提供一个公共的get方法,用于获取属性的值

案例:在一个程序中:不能随便查看人的年龄,工资等隐私,并对年龄进行合理的验证。合理即设置,否则赋默认值,年龄必须在1-120,工资不能直接看,name长度为2-6之间。

class Person{
	
	public String name;//姓名
	private int age;//年龄
	private double salary;//工资
	private String job;//岗位
	
	//进行封装:设置get以及set方法
	public void setName(String name) {
		if(name.length()>2 && name.length()<=6) {//进行名字的逻辑判断,满足则进行赋值,不                    
                                                 //满足则赋默认值
			this.name=name;
		}else {//设置默认值
            System.out.println("姓名长度不合法,将会设置默认值");
			this.name="佚名";
		}
		
	}
	public String getName() {
		return name;
	}
	public void setAge(int age) {
		if(age > 1 && age <= 120) {//进行年龄的逻辑判断,满足则进行赋值,不满足则赋默认值
			this.age=age;
		}else {//进行赋默认值
			System.out.println("年龄不在1-120之间,将会设置默认值");
			this.age=18;
		}
		
	}
	public int getAge() {
		return age;
	}
	public void setSalary(double salary) {
		this.salary=salary;
	}
	public double getSalary() {
		return salary;
	}
	public void setJob(String job) {
		this.job=job;
	}
	public String getjob() {
		return job;
	}
	public String info() {
		return "信息为: name="+name+" age:"+age+" salary ="+salary+" job ="+job; 
	}
	
}

新建一个对象,再调用这些方法进行验证。

封装与构造器:

 考虑到使用构造器的时候就不会进行逻辑检测,可以进行构造器设置:

	public Person() {
		
	}
	public Person(String name,int age,double salary,String job) {
		setName(name);
		setAge(age);
		setSalary(salary);
		setJob(job);
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值