java内存学习笔记-------易筋经

前一段时间看了尚学堂马士兵师的java视频,快放假了用这几天再复习一下。马老师说内存分析是java中的易筋经,所以本文的题
目就出来了。呵呵!抓紧时间多学点东西。
 
  1. 在一个java源程序中,只能有一人为public类型的类。并且
  2. 这个类名与文件名相同。
  3. 如:Person.java(文件名Person)
  4. //类名Person 与文件名Person.java相同,一个源文件中只有一个public类。
  5. public class Person{
  6.     //方法名Person与类名相同
  7.     Person(){ }
  8.     public static main(String[] args){
  9.     }
  10. }
  11. 方法名必须与类名相同。
  12. 方法分配在栈内存中,在执行方法时,方法的变量在栈内存中,
  13. 在方法调用完成后方法内的变量就消失。
  14. 在没有写构造方法时编译器会默认加一个没有参数构造方法,
  15. 当自己定义一个构造方法时系统不再给添加。
  16. class BirthDate{
  17.     int day,month,year;
  18.     public BirthDate(){
  19.     
  20.     }
  21.     public int getDay(){
  22.         
  23.     }
  24.     public int getMonth(){
  25.         
  26.     }
  27.     public int getYear(){
  28.         
  29.     }
  30.     public void display(){
  31.     
  32.     }
  33. }
  34. public class Test{
  35.     public static void main(){
  36.         
  37.     }
  38. }
  39. 在引用带有参数的构造方法时,参数在栈内存中先建立,调用完成后消失
  40. 参数为局部变量,在调用完成后消失。
  41. 点类来表示三维空间,可以生成特定
  42. class Point{
  43.     double x,y,z;
  44.     Point(double _x,double _y,double _z){
  45.         x=_x;
  46.         y=_y;
  47.         z=_z;
  48.     }
  49.     void setX(double _x){
  50.         x=_x;
  51.     }
  52.     void setY(double _y){
  53.         y=_y;
  54.     }
  55.     void setZ(double _z){
  56.         x=_z;
  57.     }
  58.     double getDistance(Point p1){
  59.         return (x-p1.x)*(x-p1.x)+(y-p1.y)*(y-p1.y)+(z-p1.z)*(z-p1.z);
  60.     }
  61. }
  62. public class TestPoint{
  63.     public static void main(String[] args){
  64.         Point p=new Point(1.0,2.0,3.0);
  65.         Point P1=new Point(2.0,3.0,1.0);
  66.         System.out.println(p.getDistance(p1));
  67.         p.setX(5.0);
  68.         System.out.println(p.getDistance(new Point(1.0,1.0,1.0)));
  69.     }
  70. }
  71. 方法重载:一个类中定义多个方法名相同但参数不同的方法
  72.     
  73. OverLoad:方法名一样,参数不一样
  74. 参数不一样:参数个数,参数类型不一样
  75. public class OverLoad{
  76.     max(int a,int b){
  77.         System.out.println(a>b?a:b);
  78.     }
  79.     max(Float a,Floatb){
  80.         System.out.println(a>b?a:b);
  81.     }
  82.     max(double a,double b){
  83.         System.out.println(a>b?a:b);
  84.     }
  85.     
  86.     public static void main(String[] args){
  87.         OverLoad ol=new OverLoad();
  88.         ol.max();
  89.     }
  90. }
  91. 和普通方法一样构造方法也可以构成重载。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值