黑马程序员 一些个人总结的小基础知识点

---------------------- ASP.Net+Android+IO开发S.Net培训、期待与您交流! ----------------------

java中的 一些小知识及注意事项

注释符:
单行://
多行:/*…………*/
文档注释符://**………….*/(java 特有)
注释符的作用:1.注释说明程序
 2.调试程序
编写代码前的注意事项:
先写注释即需求分析,注释内容包括:需求,思路,步骤
标示符:
有26个英文字母大小写、数字,符号(下划线,美元符号)
合法表示符的规则:
包名:多单词组成是所有字母都小写
类名接口名:多单词时使用驼峰命名法。
变量名和函数名:多单词时第一个单词首字母小写其他的单词首字母大写
常量名:全大写,多单词时下划线连接每个单词
定义表示符的规则:
不以数字开头
不能使用关键字
java中严格区分大小写
数据类型:
整型:byte(8位)、short(16位)、int(32位)、long
浮点型:float(32位)、double(64位)注意:定义float型时:float a = 0.356f
字符型:char(0-6535)
布尔型:boolean(true和false)


定义类的时候应该注意:当主函数所在的类前面有public修饰时保存的文件名必须和主函数所在的类的类名相同。
变量运算时应该注意类型的变换,比如:
byte a = 1;
a = a + 1;
上面的两句代码放到程序中运行就不能通过,编译会失败
因为第二句将第二个a提升到了int型之后与1运算在之后赋给byte型的a(第一个a没有被提升到int型),但是byte的空间没有int的大,int是32位,byte是8位,所以赋值给a失败,故报错。(提升只能从低往高提升。)


逻辑运算符中的注意项:
&&与&&的区别(||与||是同理的)
&与运算符:当程序运行&时 需要同时判断&字符两边,同为真则结果为真,否则为假;
&&:当程序运行时,如果&&前面的为假时则不再判断后面的,直接返回假,即后面的短路了,但是如果前面的不能确定结果的话即是前面的为真的话后面的程序还是要运行的。


程序流程控制中的一些注意项:
Break:
循环多的时候可以给循环起名字,以便于直接跳出。名字只要合法即可无特殊要求。
Eg:
W:for(;;)
{
q:for(;;)
{
break w;
}
}
这个代码会直接跳出外循环w而不是跳出内循环q.
Continue:
Continue只作用于循环结构,继续循环也可以同break给循环起名字以便于控制循环的执行。
注意:
1.break和continue语句的作用范围;
2.二者单独存在的时候,下面的语句不会执行函数的重载。




函数的重载:
在同一个类中,允许出现一个以上的同名函数,只要他们的参数个数或者参数类型不同即可。(参数是有顺序的,顺序不同也是不同的)
特点:与返回值无关,之看参数的列表;
好处:方便阅读,优化了程序设计。
重载使用的时机:函数定义的功能相同,但是参与计算的未知内容不同,那么这是就可以定义一个函数的名称以表示其功能,方便阅读,而通过参数列表的不同来区分多个同名函数。




数组:
定义格式:
int[] arr = new int [5];
int[] arr = new int []{2,3,4};//int [] arr ={2,3,4}这个是简化模式
两种定义方法第一种是仅仅定义一个数组即开辟了一个固定长度的空间但是没有赋值。第二种是定义数组并赋值,这时就不需要直接给出数组长度了,数组的长度大小就是定义时存入数据的个数。


面向对象
相对的是面向过程。
面向对象的三大特征是:封装、继承、多态。


类:
成员变量与局部变量的区别:
作用范围:成员变量作用于整个类中;而局部变量作用于函数中,或者语句中
在内存中的位置不同:成员变量存在于堆内存中,因为对象的存在才在内存中存在;局部变量存在于栈内存中
初始值:成员变量有初始值0,或者null;而局部变量是没有初始值的。
匿名对象:
 可以这样理解:匿名对象就是没有名字的对象。Eg:new Car().show();这个代码是直接调用了Car这个类中的show方法。
使用:
当对象的方法之调用一次时,可以使用,这样代码比较简化(多次调用的话就必须起名字了)
将匿名对象作为实际参数进行传递


构造函数:
特点:(与一般的函数相比较)
函数名与类名相同
不需要定义返回值类型但是与void是不同的。Void是没有具体的返回值的返回值类型,也就是说还是有返回值类型的
不需要些return语句
运行上是不同的
构造函数式在对象一建立就运行,给对象初始化。而一般函数是对象调用才执行,是给对象添加对象所具备的的功能的
一个对象建立,构造函数只运行一次,而一般方法可以被该对象多次调用。
作用:可以用于给对象进行初始化
注意:当没有定义构造函数时系统就会默认给该类加入一个空参数的构造函数。但是如果有定义的话系统就不会再自动添加了。构造函数可以有多个,即函数重载,这里的名字必相同所以参数必须不同。
构造函数定义的时机:
当事物存在时就具备一些特性或者行为,那么可以将这些内容定义在构造函数中。(如老毕的课件中给公司的新人在创建其对象时需要记录其姓名和年龄)



构造代码块:
是给所有对象初始化的(共性的初始化内,如老毕讲课中孩子出生要哭)



关键字:
Static:静态修饰符
用法:
用于修饰成员(成员变量,成员函数)。
加静态修饰符后,成员不在堆内存中,而在共享区中,被对象所共享。
当成员被static修饰后,就多了一种调用方法,除了可以被对象调用外,还可以直接被该类名调用:格式:类名.静态成员。
特点:
随着类的加载而加载,当类被使用,调入内存是,静态直接建立。(老毕课件中的人Person()的类中有国籍contry=”CN”这个静态变量,当Person()类进内存时,contry=”CN”就存在了,这时Person()类是不存在的)注意:当Person()类被清除时contry也就同时不存在了。
优先于对象存在(这也是对第一条的一个变相解释);
被所有对象所共享;
可以直接别类名所调用。



实例变量与类变量的区别:
存在位置:
类变量随着类的加载而存在与方法区中;实例变量随着对象的建立存在于堆内存中。
生命周期:
类变量的生命周期最长,随着类的消失消失;实例变量随着对象的消失消失。
静态的使用注意事项:
静态方法只能访问静态成员,非静态方法两者皆可访问。
静态方法中不可以定义this或者super关键字。因为静态先于对象存在,所以不能实现this
静态的利弊:
利:
1.对象共享,在单独空间存储,省空间;
2.可以直接被类名调用。
弊:
1.生命周期过长
2.访问出现局限性(静态只能访问静态)



静态代码块:
格式:
static
{
执行的语句
}
特点:随着类的加载而执行,只执行一次,并优先于主函数执行,用于给类进行初始化


小结:
静态代码块是给类初始化的:static{…}
构造代码块是给对象初始化的:{……}
构造函数是给对应对象初始化的:Person(){……}---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------详细请查看: http://edu.csdn.net
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值