01-计算机、程序和Java概述

01-计算机、程序和Java概述

  • 1.1 引言

    • 该专题旨在学习如何通过编写程序来解决问题
  • 1.2 什么是计算机
    计算机是存储和处理数据的电子设备。
    计算机包括硬件和软件两部分。硬件指的是计算机中可见的物理部分,而软件指的是提供不可见的指令,这些指令控制硬件并使得硬件完成特定的任务。

    一台计算机是由以下几个主要的硬件组件构成的:

    • 中央处理器
    • 内存(主存)
    • 存储设备(磁盘和光盘)
    • 输出设备(显示器和打印机)
    • 输入设备(鼠标和键盘)
    • 通信设备(调制解调器和网卡)
    • 1.2.1 中央处理器
      • 中央处理器是计算机的大脑,由控制单元和算术/逻辑单元组成。
      • 控制单元:用于控制和协调其他组件的动作。
      • 算术/逻辑单元:用于完成数值运算(加法、减法、乘法、除法)和逻辑运算(比较)。
    • 1.2.2 比特和字节
      • 计算机中字节是最小的存储单元。
      • 计算机的存储能力是以字节和多字节来衡量的:
        • 千字节(KB)大约是1000字节
        • 兆字节(MB)大约是100万字节
        • 千兆字节(GB)大约是10亿字节
        • 万亿字节(TB)大约是1万亿字节
    • 1.2.3 内存
      • 计算机的内存由一个有序的字节序列组成,用于存储程序及程序需要的数据。
      • 每个字节都有唯一的地址,以便于存储和获取数据。
      • 内存中字节的内容永远非空,但是她的原始内容可能对于你的程序来说是毫无意义的。一旦新的信息被放入内存,该字节的当前内容就会丢失。
    • 1.2.4 存储设备
      • 磁盘驱动器
      • 光盘驱动器(DVD和CD)
      • USB闪存驱动器
    • 1.2.5 输入和输出设备
    • 1.2.6 通信设备
  • 1.3 编程语言

    • 1.3.1 机器语言
      • 计算机的原生语言就是机器语言,是一套内嵌的基本指令集。这些指令都是以二进制代码的形式存在。
    • 1.3.2 汇编语言
      • 汇编语言使用短的描述性单词(称为助记词)来表示每一条机器语言指令。
    • 1.3.3 高级语言
      • 用高级语言编写的程序都称为源程序或源代码。由于计算机不能运行源程序,源程序必须被翻译成可执行的机器代码。翻译可以由另外一种称为解释器或者编译器的编程工具来完成。
语言描述
Ada以Ada Lovelace(她研究机械式的通用型计算机)命名。Ada是为美国国防部开发的,主要用于国防项目
BASIC是Beginner’s All-purpose Symbolic Instruction Code(初学者通用符号指令代码)的缩写,是为了是初学者易学易用而设计的
C由贝尔实验室开发。C语言具有汇编语言的强大功能以及高级语言的易学性和可移植性
C++基于C语言开发,是一种面向对象程序设计语言
C#读为“C Sharp”,是由Microsoft公司开发的面向对象程序设计语言
COBOL是COmmon Business Oriented Language(面向通用商业的语言)的缩写,是为商业应用而设计的
FORTRAN是FORmula TRANslation(公式翻译)的缩写,广泛应用于科学和数学应用
Java由Sun公司(现在属于Oracle)开发,是面向对象程序设计语言,广泛应用于开发平台独立的互联网应用程序
JavaScript是由Netscape公司开发的Web编程语言
Pascal以Blaise Pascal(Blaise Pascal是17世纪计算机器的先驱)命名,Pascal是一个简单的、结构化的、通用目的的语言,主要用于编程教学
Python是一种简单的通用目的的脚本语言,适合编写小程序
Visual Basic又Microsoft公司开发,方便编程人员快速开发基于Windows的应用
  • 1.4 操作系统
    • 操作系统的主要任务:
      • 控制和监视系统活动
      • 分配和调配系统资源
      • 调度操作
    • 1.4.1 控制和见识系统活动
      • 操作系统跟踪存储设备中文件和文件夹的动态,还要确保不同的程序和用户同时使用计算机时不会互相干扰,另外,操作系统还负责安全处理,以确保未经授权的用户和程序无权访问系统。
    • 1.4.2 分配和调配系统资源
      • 操作系统负责确保一个程序需要使用哪些计算机资源,并进行资源分配和调配以运行程序。
    • 1.4.3 调度操作
      • 操作系统负责调度程序的活动,以便有效的利用系统资源。
      • 多道程序设计允许多个程序通过共享一个CPU同时运行。
      • 多线程允许单个程序同时执行多个任务。
      • 多处理类似于多线程,区别在于多线程是在单个程序中并行运行多个线程,而多处理是采用多个处理器来并行运行多个程序。
  • 1.5 Java、万维网以及其他
    • Java是由James Gosling在Sun公司领导的小组开发的。(2010年Sun公司被Oracle收购)
    • 这种能在Web浏览器中运行的Java程序称为Java小程序(applet)。
    • 用于安卓手机的软件也是采用Java进行开发的。
  • 1.6 Java语言规范、API、JDK、JRE和IDE
    • Java语言规范定义了Java的语法,完整的Java语言规范可以在docs.oracle.com/javase/specs上找到。
    • Java库则在Java应用程序接口(API)中定义。
    • JDK适用于开发和运行Java程序的软件。
    • IDE是快速开发程序的集成开发环境。
  • 1.7 一个简单的Java程序
    • Java是从类中的main方法开始执行的。
    • 类名都是以大写字母开头的。
    • 一个字符串必须放入双引号中。Java中的每条语句都是以分好(;)结束,也称为语句结束符。
    • Java源程序是区分大小写的。如果在程序中奖main替换成Main,就会报错的。
    • print方法和println方法几乎一样,除了println方法在线上一个字符串后将移到下一行开始处,而print方法在完成显示后不会前进到下一行。
字符名称描述
{}左花括号和右花括号表示一个包含语句的块
()左圆括号和右圆括号和方法一起使用
[]左方括号和右方括号表示一个数组
//双斜杠表示后面是一行注释
“”左引号和右引号包含一个字符串(即一系列的字符)
;分号标识一个语句的结束
  • 1.8 创建、编译和执行Java程序

    • Java源程序保存为.java文件,编译为.class文件。.class文件由虚拟机(JVM)执行。

    • 源文件的扩展名必须是.java,而且文件名必须与公共类名完全相同。(如下图)
      在这里插入图片描述

    • 使用命令行执行程序时,不要使用扩展名.class。使用java ClassName来运行程序。如果在命令行使用java ClassName.class,系统就会尝试读取ClassName.Class。

    • 如果运行一个不存在的类文件,就会出现NoClassDefFoundError的错误。如果执行的类文件中没有main方法或敲错了main方法(例如,将main错敲成Main),则会出现提示NoSuchMethodError。
      在这里插入图片描述

  • 1.9 程序设计风格和文档

    • 1.9.1 正确的注释和注释风格

      • 除了行注释(以//开始)和块注释(以/*开始)之外,Java还支持一种称为Java文档注释(javadoc comment)的特殊注释形式,该注释以//开始,以/结尾。
      • 使用javadoc注释(/**…*/)来对整个类或整个方法进行注释。
      package chapter01;
      
      public class Try {
          public static void main(String[] args){
              //累加的一个变量
              /*
              这里只是为了掩饰注释的
                      这一行同样也是*/
              int result=0;
              for(int i=0;i<args.length;i++){
                  result+=Integer.parseInt(args[i]);
                  System.out.println(result);
              }
          }
      }
      
      
    • 1.9.2 正确的缩进和空白

      • 缩进用于展示程序中组成部分或语句之间的结构性关系。二院操作符的两遍应该各加一个空格。
    • 1.9.3 块的风格

      • 次行风格和行尾风格
      package chapter01;
      
      public class BlockStyle {
          public static void main(String[] args){
              System.out.println("这个是行尾风格");
          }
      }
      
      
      package chapter01;
      
      public class BlockStyle2
      {
          public static void main(String[] args)
          {
              System.out.println("这个是次行风格");
          }
      }
      
      
  • 1.10 程序设计错误

    • 1.10.1 语法错误

      • 语法错误是由创建代码时的错误引起的。
        在这里插入图片描述
    • 1.10.2 运行时错误

      • 运行时错误是引起程序非正常终止的错误。(比如将0作为除数)
    • 1.10.3 逻辑错误

      • 当程序没有按照预期的方式执行时就会发生逻辑错误。
    • 1.10.4 常见错误

      • 1、遗漏右括号
      • 2、遗漏分号
      • 3、遗漏引号
      • 4、名称拼写错误
  • 1.11 使用NetBeans开发Java程序

    • 1.11.1 创建Java工程
    • 1.11.2 创建Java类
    • 1.11.3 编译和运行类
      在这里插入图片描述
      在这里插入图片描述
  • 1.12使用Eclipse开发Java程序

    • 1.12.1 创建Java工程
    • 1.12.2 创建Java类
    • 1.12.3 编译和运行类
      在这里插入图片描述
  • 1.13使用 IntelliJ IDEA开发Java程序

    • 1.13.1 创建Java工程
    • 1.13.2 创建Java类
    • 1.13.3 编译和运行类
      我自己使用的就是这个开发工具,更加的现代智能化一些。
      IntelliJ IDEA创建Java项目
  • 复习题

    • 1、内存和永久存储设备的主要不同是什么
      • 内存一般是ram内存,也就是运行内存,是在程序运行的时候使用的内存
      • 永久存储大多指ROM内存,是可以存储数据的,如果不删除,一般是不会丢失数据的
    • 2、编译器和解释器的区别(编译器和解释器的区别
  • 编程练习(这里只提供部分题目,其实本质都是差不多的,会了这些其实这一章的内容也就是知道的)

    • 1、编写程序,显示Welcome to Java、Welcome to computer science和Programming is fun。

      package chapter01;
      
      public class Code_01 {
          public static void main(String[] args){
              System.out.println("Welcome to Java");
              System.out.println("Welcome to Computer Science");
              System.out.println("Programming is fun");
          }
      }
      
    • 2、编写程序,显示Welcome to Java五次。

      package chapter01;
      
      public class Code_02 {
          public static void main(String[] args){
              for(int i=0;i<5;i++){
                  System.out.println("Welcome to Java");
              }
          }
      }
      
      
    • 3、编写程序,显示Java的图案。

      package chapter01;
      
      public class Code_03 {
          public static void main(String[] args){
              char[][] java=new char[4][29];
              java[0][4]='J';
              java[1][4]='J';
              java[2][0]='J';
              java[2][4]='J';
              java[3][1]='J';
              java[3][3]='J';
      
              java[0][9]='A';
              java[1][8]='A';
              java[1][10]='A';
              java[2][7]='A';
              java[2][8]='A';
              java[2][9]='A';
              java[2][10]='A';
              java[2][11]='A';
              java[3][6]='A';
              java[3][12]='A';
      
              java[0][14]='V';
              java[0][20]='V';
              java[1][15]='V';
              java[1][19]='V';
              java[2][16]='V';
              java[2][18]='V';
              java[3][17]='V';
      
              java[0][25]='A';
              java[1][24]='A';
              java[1][26]='A';
              java[2][23]='A';
              java[2][24]='A';
              java[2][25]='A';
              java[2][26]='A';
              java[2][27]='A';
              java[3][22]='A';
              java[3][28]='A';
              for(int i=0;i<4;i++){
                  for (int j=0;j<29;j++){
                      if (java[i][j]!='J'&&java[i][j]!='V'&&java[i][j]!='A')System.out.print(" ");
                      else System.out.print(java[i][j]);
                  }
                  System.out.println("");
              }
          }
      }
      
      

      结果显示:

          J    A    V     V    A   
          J   A A    V   V    A A  
      J   J  AAAAA    V V    AAAAA 
       J J  A     A    V    A     A
      
      Process finished with exit code 0
      
      
    • 4、编写程序,显示以下表格。

      package chapter01;
      
      public class Code_04 {
          public  static  void main(String[] args){
      
              int[][] numbers={
                      {1,1,1},
                      {2,4,6},
                      {3,9,27},
                      {4,16,64}
              };
              System.out.println("a     a^2   a^3");
              for (int i=0;i<4;i++){
                  for(int j=0;j<3;j++){
                      System.out.format("%-6d",numbers[i][j]);
                  }
                  System.out.println(" ");
              }
          }
      }
      
      

      结果显示:

      a     a^2   a^3
      1     1     1      
      2     4     6      
      3     9     27     
      4     16    64     
      
      Process finished with exit code 0
      
      
    • 5、编写程序,显示1+2+3+4+5+6+7+8+9的结果。

      package chapter01;
      
      public class Code_06 {
          public static void main(String[] args){
              int result=0;
              for (int i=1;i<=9;i++){
                  result+=i;
              }
              System.out.print(result);
          }
      }
      
      
    • 6、编写程序,使用以下公式计算并显示半径为5.5的圆的面积和周长。
      周长=2 x 半径 x π
      面积=半径 x 半径 x π

      package chapter01;
      
      public class Code_08 {
          public static void main(String[] args){
              zhouChang(5.5);
              mianJi(5.5);
          }
          static void zhouChang(double radius){
              System.out.println(2*radius*Math.PI);
          }
          static void mianJi(double radius){
              System.out.println(Math.PI*radius*radius);
          }
      }
      
      

    第一章呢,就是一些基本情况的了解,下面才会真正的进入到Java的学习当中,那就期待下一期吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值