zoukankan      html  css  js  c++  java
  • The fourth day

    switch结构:多选择结构
    if - else if - else 与 switch的区别:if- else if - else (布尔表达式区间),switch表示值;
     1  //测试switch语句
     2 public class TestSwitch {
     3  public static void main(String[] args){
     4   int month = (int)(1+12*Math.random());
     5      System.out.println("月份:"+month);
     6      switch(month){
     7      case 1:
     8       System.out.println("一月份,过年了!");
     9       //break;
    10      case 2:
    11       System.out.println("二月份,开春了!");
    12       //break;
    13      default:
    14             System.out.println("我是其他月份!");
    15             break; 
    16      } 
    17  }
    18 }

    注意:break的使用
    while(布尔表达式){
     循环体;
    }
     1 public class TestWhile {
     2  public static void main(String[] args) {
     3   //计算1+2+3+……+100的累加的和,5050.
     4      //暴力
     5   int i=1, sum = 0;
     6   while (i<=100){
     7    sum= sum+i;
     8    i++;
     9    System.out.println(sum);   //表示执行过程
    10   }
    11   //System.out.println(sum);
    12  }
    13 }

    for循环语句是支持迭代的一种通用结构,是最有效,最灵活的循环结构。

     1 public class TestFor {
     2  public static void main(String[] args) {
     3   //计算1到100的整数和
     4   int i,sum=0;
     5   for (i=1;i<=100;i++){
     6    sum=sum+i;
     7   }
     8   System.out.println("sum="+sum);             //双引号里的是字符串 ,syso在面里面
     9  }
    10 }
    用for 输出:1 1 1 1 1
       2 2 2 2 2
       3 3 3 3 3
       4 4 4 4 4 
     1 public class TestWhile {
     2  public static void main(String[] args) {
     3   int i,j;
     4   for (i=1;i<=5;i++){
     5    for (j=1;j<=5;j++){
     6     System.out.print(i+" ");
     7                 //print 里面必须有内容," "里面是空格 得出结果是  11111  22222  33333 44444  55555
     8    }
     9    System.out.println();
    10  //再换行,得出结果;
    11   }
    12  }
    13 }
     1 //乘法口诀,用for
     2 public class TestFor {
     3  public static void main(String[] args) {
     4   int i,j,s=0;
     5   for (i=1;i<=9;i++){
     6    for(j=1;j<=i;j++){
     7     s=j*i;
     8     System.out.print(j+"*"+i+"="+s+" 	");//横向跳到下一制表符位置
     9    }
    10    System.out.println();
    11   } 
    12  }
    13 }
    break终止整个循环,continue终止本次循环。
    带标签的break和continue:
     goto 是 Java的一个保留字,但并未在Java语言中得到正式使用;
     Java没有goto语句。
    方法的定义_形参_实参_返回值_语句块:方法就是一段用“来完成特定功能的代码片段”,类似于其它语言的函数
      方法声明格式:
     【修饰符1   修饰符2  _】    返回值类型      方法名(形式参数列表){
      Java语句:_  _  _
      }
      方法的调用方式:
          对象名.方法名(实参列表)
          方法的详细说明
          1.形式参数:在方法声明时用于接收外界传入的数据。
          2.实参调用方法是实际传给方法的数据。
          3.返回值:方法在执行完毕后返还给调用它的环境的数据。
          4.返回值类型:事先约定的返回值的数据类型,如无返回值,必须显示指定为void。
    //测试方法的基本使用
     1 public class TestMythod {
     2   public static void main(String[] args) {
     3    //通过对象调用普通方法
     4  TestMythod tm= new TestMythod();     //类创建对象
     5  tm.printSxt();                       //调用对象的方法
     6  int c = tm.add(30, 40, 50)+1000;   //实际参数
     7  System.out.println(c);
     8 }
     9   void printSxt(){
    10    System.out.println("北京尚学堂…");
    11    System.out.println("上海尚学堂…");
    12    System.out.println("广州尚学堂…");
    13   }
    14   int add(int a , int b, int c){//形式参数
    15    int sum= a+b+c;
    16    System.out.println(sum);
    17    return sum;   //return 两个作用:1.结束方法的运行;2.返回值
    18   }
    19 }

        注意事项:
           1.实参的数目,数据类型和次序必须和所调用的方法声明的形式参数列表匹配;
           2.return语句终止方法的运行并指定要返回的数据;
           3.Java中进行方法调用中传递参数时,遵循值传递的原则(传递的都是参数的副本);
           4.基本类型传递的是该数据值得copy值;
           5.引用类型传递的是该对象引用的copy值,但指向的是同一个对象。
    方法的重载:overload,
          实际是完全不同的方法,只是名称相同
    递归算法_递归头_递归体(本质:自己调自己,典型例子:阶乘,如算5的阶乘)
       1.定义递归头。 什么时候不调用自身方法,如果没有头,将陷入死循环,也就是递归的结束条件;
       2.递归体。 什么时候需要调用自身方法。
    面向过程和面向对象的区别都是对软件分析,设计和开发的一种思想,它指导着人们以不同的方式去分析,设计和开发软件。
    面向过程思想思考问题是,我们首先思考“怎么按步骤实现?”并将步骤对应成方法,一步一步,最终完成。
    这个适合简单任务,不需要过多协作的情况下。比如,如何开车?
    面向过程适合简单,不需要协作的事物。但是当我们思考比较复杂的问题,比如“如何造车?”,就会发现列
    出1234这样的步骤,是不可能的。那是因为,造车太复杂了,需要很多协作才能完成。此时面向对象思想就应运而生了。
    面向对象(object)思想更契合人的思维模式。我们首先思考的是“怎么设计这个事物?”
    比如思考造车,我们就会先思考“车怎么设计?”,而不是怎么按步骤造车的问题。
    对象是什么_对象和数据管理
           事物的发展总是遵循“量变引起质变”的哲学原则;
           数据管理: 数据无管理,数据管理和企业部门制,对象和企业项目制
     类:我们叫做class,对象:我们叫做Object,instance(实例)。以后我们说某个类的对象,某个类的实例。是一样的意思。
    类中创建对象
    类中创建对象和方法的实例:
     1 public class TestLei {
     2 void study(){
     3  System.out.println("现在必须好好学习");
     4 }
     5 void work(){
     6  System.out.println("然后好好工作");
     7 }
     8 void time(){
     9  System.out.println("剩下的时间是安详");
    10 }
    11 TestLei(){           //系统自动省略
    12  }
    13 public static void main(String[] args) {
    14  TestLei  lei = new TestLei();//有new的就是代表自动创建一个对象,(TestLei(){}表示构造方法,
    15 用于创建这个类的对象,无参的构造方法可以由系统自动创建)
    16  lei.study();
    17  lei.work();
    18  lei.time();
    19 }
    20 }
    Java虚拟机的内存可以分为三个区域:栈stack,堆heap,方法区methond area
    栈的特点如下:
          1.栈描述的是方法执行的内存模型,每个方法被调用都会创建一个栈帧(存储局部变量,操作数,方法出
             口等)
          2.JVM 为每个线程创建一个栈,用于存放该线程执行方法的信息(实际参数,局部变量等)
          3.栈属于线程私有,不能实现线程间的共享!
          4.栈的存储特性是“先进后出,后进先出”
          5.栈是由系统自动分配,速度快,栈是一个连续的内存空间!
         
    堆的特点如下:
          1.堆用于“创建好的对象和数组”(数组也是对象)
          2.JVM只有一个堆,被所有线程共享
          3.堆是一个不连续的内存空间,分配灵活,速度慢!
    方法区(又叫静态区)特点如下:
          1.JVM只有一个方法区,被所有线程共享;
          2.方法去实际也是堆,只是用于存储类,常量相关的信息!
          3.用来存放程序中永远是不变或唯一的内容。(类信息【Class对象】,静态变量,字符串常量等)
  • 相关阅读:
    [windbg] 进程、线程
    [Windows 驱动开发] 驱动中获取函数地址
    [DuiLib] 入坑资料收集
    [Windows 驱动开发] 获取驱动详细信息
    基于模板的SPS展示层定制
    关于工作角色的一个新的思考
    中小企业IT建设的有关思路
    定制SharePoint Portal之去除帮助链接
    大客户谈判技巧关于IT行业售前工作
    细节决定成败
  • 原文地址:https://www.cnblogs.com/zqfdgzrc/p/10293992.html
Copyright © 2011-2022 走看看