java一些细节等相关笔记

有关 开发 的笔记

一些细节

  1. 真正开发时,一般用公司域名倒置作为包名

比如百度搜索 com→baidu→www

​ 百度百科 com→baidu→baike

  1. 凡是属于IO流的类使用后如果不关闭就会一直占用资源,要养成用完即关的习惯。例如

    Scanner sc=new Scanner(System.in);
    //next自动去除字符前空格。输入到空格前.nextLine保留空格,输入到摁下Enter键前
    String str=Scanner.nextLine();
    sc.close();
    
    1. while循环与do...while循环的区别是do...while至少执行一次,其余情况基本一样(不会出现都判断相同条件时多做一次的情况)

    2. 在设计方法时,最好保证方法的原子性,即一个方法只执行一个功能,这样有利于今后的扩展

    3. main方法尽量保证简洁、干净。尽量把公共模块提取到外面

    4. 形参:定义方法时给定的参数,实参:调用方法时输入的参数

    5. 变量的首选命名方法

       int[] numbers=new int[10];
      

      在变量名前后加中括号是C++和C语言的,这样设计本身姿势为了让这些程序员转型才加入的。

      1. 数组是相同数据类型的有序集合

      可变参数

    当想要定义一个方法,却不知道放多少个参数进去时,可使用:

    public void test(int... i){
        
    }
    

    该参数可将输入进去的数传成一个数组(可放多个数进去),可变参数必须在括号的最后面。

递归

递归方法里需包含两个部分:

递归头:决定什么时候不调用自身方法。如果没有头,将陷入死循环。

递归体:什么时候需要调用自身方法。

由于java采用栈机制,一些小计算可以用递归,但是一些大计算(比如1000的阶乘)会给电脑带来过多负担,所以是不是最好的思路还需自己多加分析

java内存分析

声明对象:int[] array=null;→栈

创建(初始化)对象:array=new int[10];→堆

image-20200504170939224

静态初始化:创建+赋值

int[] a={1,4,45,678,6}

动态初始化:包含默认初始化

int []b=new int[10];

posted @ 2020-05-05 10:48  叄更灯火  阅读(140)  评论(0)    收藏  举报