重拾java基础(七):匿名对象总结
一、匿名对象
1、匿名对象 是指不给对象起名字,
例如:
一般对象为
类名(例如phone)对象名(自己起)=new 类名();
则匿名对象为 new 类名();
2、匿名对象
每次使用都等于new了一个新对象 所以当只使用一个对象里的一个方法 时 可以使用匿名对象
3、匿名对象 好处在于传参;
class weixin
//定义weixin类
{
private string wengben;
//属性省略
public void showsend(){
}
}
class phone
//定义phone类
{
//属性省略
public void showcall(weixin w){
}
}
class testphone //测试类
{
public static void main(string[] ages){
phone p=new phone();
p.showcall(new weixin("45135135135"));
}
4、易犯错误;
在使用匿名对象时 调用私有属性时要用get函数;不能直接p.属性; 私有的函数不能直接调用出来;要放到其类中的公有函数中间接调用
二、类之间的方法调用
1、如果遇到自定义的两个类中需要调用彼此之间的函数;要注意在测试类中进行传参, 这样的话,可以可以避免属性等赋值后,在本对象再次使用时值可以修改。
2、类的考虑
a、找名词 //作为类名
b、找名词 //个人认为是针对类 给类找的修饰语 作为属性之用
c、动作 //动作是用来创建函数的
4、找主动方和被动方 // 主动方来调用被动方
3、易犯错误
一个类在寻找属性之后 可以没有动作 ,但是在调用其属性时一定要认清是否进行的私有 封装,如果封装不能用p.属性
三、static关键字
1、static 静态的意思 但是这里的静态不是静止的意思,是指在你static所在的当前 类在加载的时候就和类一起在方法区开辟空间了;所以类在他就在。此为静态2、静态成员因为类在就存在了,所以不需要创建对象就可以调用了, 方法为 类名.静态属性名 类名.静态方法名();3、静态成员可以直接调用静态成员;如果想调用其他成员的话,需要使用对象 也就是说对象可以调用一切成员。4、其他成员在对象的创建后才会存在5、先存在的不能调用后存在的,后存在的可以调用先存在的。6、好处 方便 弊处 占内存 使用有限制7、一般用在工具类中8、易犯错误 静态对象可以被自己类中的所有对象共享 也就是说如果你new了一个对象 用了静态成员, 下次再new一个对象 这个静态成员的内容就不是空的; 例如:
四、代码块
1、代码块 即用{}包含起来的部分 a、构造代码块 { 执行代码 } 放在类中 类似与构造函数 b、静态代码块 static{ 执行代码 } 也放在类中 静态的类存在他就在 只调用一次 也就是说 静态就在那,再new一个对象 他也不再调用了 c、局部代码块 { 执行代码 } 放在方法中 调用方法他马上运行2、运行顺序 静态代码块 > 构造代码块 > 构造函数 > 局部代码块 ( 易 错 )
五、对象的创建过程
不过记得静态跟类一起在方法区加载空间;
六、math类
数学方法 属于lang包 可查api表 但记得 一切属于lang包都可以直接 math.方法名 因为lang 自动加载
七、scanner类
1、需要导入包 import java.util.scanner
2、键盘录入
3、nextint(),接收整数
nextdouble(),接收小数
next(),接收字符串
nextline(),接收字符串
next() 接收时有效字符串前的所有 空格 、制表符都不记,他是从有效字段开始遇
到空格、制表符、回车就结束。
nextline() 是接收文本的 从第一个任意字符开始 一旦遇到回车就结束
总结
一旦在nextline() 前面有任意的键盘录入语句时都会在 栈 内留下一个
回车,nextline()遇到直接结束
例如
scanner sc=new scanner(system.in);
system.out.print("请输入你的编号:");
int id=sc.nextint();
system.out.print("请输入你的姓名:"); //虽然有输出语句但是此语句在方法区不影
响栈
string name=sc.nextline(); //其会在栈内接收一个回车 就等于输入了 空(什么
都没有 直接进行下一语句)
system.out.println("你的编号是:"+id+",姓名是:"+name);
八、random类
1. java.util包
2. 创建对象 random.方法名
3. 功能方法
nextdouble(),得到一个大于等于 0.0 且小于 1.0的随机小数
nextint(),得到一个随机生成的int数字
nextint(int n),得到一个大于等于0且小于n的随机int数字
以上就是重拾java基础(七):匿名对象总结的内容。
