知识屋:更实用的电脑技术知识网站
所在位置:首页 > 教育

S1java基础学习笔记

发表时间:2022-03-25来源:网络

第一章  Java基础

程序目标:减轻现实生活中一类人的工作量,提高工作效率。

学员最终可以书写系统:

超市管理系统,POS机系统等

入库单

销售单

01.课程重点

   五大重点:    

01.分支(选择)结构

    02.循环结构

03.数组

04.二重循环

05.带参方法

02.什么是计算机程序?

解析:就是为了完成某一项工作而执行的一系列有序指令的集合。

03.Java相关的技术有哪些?

JavaSE(桌面应用开发)  JavaEE(Web开发)

老师,你教教我如何判定一个程序是桌面程序还是web程序?

解析:浏览器:

IE

     搜狗浏览器(内核IE) 傲游  世界之窗  360 QQ  猎豹

FireFox

Google

Opera

IE不等于浏览器,只是浏览器的一种

判定规则:如果一个程序(软件)不需要借助浏览器就可以执行的,那么就是桌面应用程序

反之,是web应用程序。

04.开发Java程序的步骤有哪些?

编写,编译,运行

05.Java程序的基本框架是什么?

解析:外层框架和内层框架,详细见后续讲解。

06.Java的注释类型有哪些?

单行://

多行:/**/

课程重点:

01.平台和语言不是一码事。一个平台下可以运行多种语言编写的代码。

班级管理系统

宿舍管理系统

超市管理系统

国家电力管理系统

水费管理系统

OA管理系统

07.开发自己的第一个java程序

   01.配置环境变量

    001.对我的电脑点击右键→属性→高级系统设置→环境变量→系统变量,在系统变量中

查找有没有名称为path的变量名,如果有,直接点击“编辑”按钮,然后按“Home”键将

光标定位到第一个位置

   002.打开“我的电脑”→打开C盘→找到“Program Files文件夹”→Java→jdk1.7.0_17

→bin,复制路径

   003.将复制的路径粘贴到光标闪动的位置,然后紧跟一个分号(;)

   004.一路确定,直到所有窗口消失。

   005.打开“开始”→“运行”→输入cmd→输入javac回车,如果出现一连串中文,证明

环境变量配置成功。

  02.编写代码

    001.在D盘的根目录创建一个名称为Hello的后缀名为java的文件。

    002.编写代码

  03.编译

    通过javac命令将后缀名为.java的文件编译成后缀名为.class的文件(字节码文件)

  04.运行

   通过java命令运行后缀名为.class的文件,运行的时候,后缀名不需要

     使用记事本编写第一个Java应用步骤

     1.编写源程序

     2.用javac命令将后缀名为.java文件编译成后缀名为.class的文件

     3.使用java命令执行硬盘上后缀名为.class,但是点和class都不要

     说有同学问,为什么在把.class文件用java命令执行的时候,不需要后缀?

     专业人士解析:

      当我们把.class文件交给JVM(Java虚拟机)的时候,它可以自动识别出后缀。

     Java执行流程

     Happy.java---第一道编译工作交给Java编译器---->Happy.class(字节码文件)

     -------第二道编译交给JVM----->二进制(CPU可以识别)

08.程序编码规范

解析:作为一个专业的程序员,编码规范如下:

    01.文件名,所有代码的名字都必须是英文的,而且所有出现的标点符号都是在

英文半角下。

02.代码要有缩进。

09.MyEclipse和Eclipse区别?

解析:MyEclipse(收费的)

      Eclipse(免费的)

MyEclipse功能比较强大

10.Java程序的执行机制

  解析:01.编译过程

       就是将后缀名为.java的文件通过java编译器编译成后缀名为.class的文件,编译命令

   javac

   02.执行(运行)过程

   就是通过java虚拟机(jvm)执行硬盘上后缀名为.class的文件,执行的命令是java

05.public class HelloWorld{

  public static void main(String[] args){

    System.out.println("我的第一个Java程序");  

  }

}

我们书写代码是在内层框架中。

06.main方法是java程序的入口,所有程序都是从main方法的第一行代码开始执行的。

07.println()换行打印输出内容,print()不换行

11.转义字符

\n:换行

\t:一系列空格

考试啊亲:第二章学完后

09.java中的注释

单行注释//

//我是高贵的注释:我有特权,编译器不会理会我

    //几十万行代码: 3个月后  方便团队成员阅读,方便自己阅读

多行注释:/**/

10.在java中,包名中每一个点都对应硬盘上的一层文件夹

11.在真正的开发中,咱们书写的代码所做的单元测试,都是由程序员来完成的。

第二道测试是由专业的测试人员完成的。

  Bug   

作业环节:

01.日记一篇

02.前两章单词

03.课后第3和第四题

回到顶部

第二章  变量  数据类型  运算符

1.变量

  重点:01.变量就是一块空间(用旅馆的例子做类比)

        02.变量三要素:数据类型 变量名 变量值

03.由于电脑记录位置的时候不是很好找(0x0156892321)变量名(num)。

二层 左手边 第三间(203)

2.数据类型

int

char

String

double 

char类型只能存储单个字符,如果你想存储一个空字符,要打一个空格。

3.命名规范,如不规范,买糖吃

  1.包名所有字母均小写。

  2.类名首字母大写

  3.变量首字母小写,后续有含义的单词首字母大写。例如stuName  stuAge

  4.首字母只能是字母,下划线和$符号中的一个,后续的内容可以是数字。   

    注意点:变量名不能和关键字重复

4.The local variable title may not have been initialized

   局部变量"title"没有被初始化(赋值)

定义变量的两种方式

001.先声明,再赋值

    int num;

num=5;

002.声明的同时并赋值

int num=5;

5.表达式概念:

   用运算符将操作数连接起来的式子就称为表达式a+b

6.赋值运算符(=)

  算术运算符:+ - * / %

  自增运算符

  int num=5;

  num++;//等价于 num=num+1;

  //++在前和在后的区别

  System.out.println(num);

7.类型转换

  1.自动类型转换

     规则1:

在一个表达式中,如果有一个操作数是double类型,那么整个表达式会被自动提升会double类型

     规则2:类型相容,目标类型>源类型     

  2.强制类型转换

   规则:类型相容,目标类型90){

  //执行

}else{

}

        //www.cnblogs.com

        //http://www.oschina.net/

        //csdn

        //http://www.iteye.com/magazines

        //51aspx源码网

01.分支结构

从这一章开始我们书写的代码可能不是从上到下顺序执行,就是程序的流程可以

发生跳转。这种结构分支结构。之前我们所有代码都是顺序执行。

02.逻辑运算符

&&:逻辑与  

   *表达式1&&表达式2 同真为真,其余为假

||:逻辑或  

   *:表达式1&&表达式2 有真必真,其余为假

  !:逻辑非

   *:取反

03.那些年,我们犯的错

     01.错误:javScore cannot be resolved

  解决方案:可能性有两种

            *:就是变量名书写错误

*:无法访问到该变量

02.不堪入目的在类里面直接写代码,代码没有出现在main方法中

04.if-else选择结构

     语法:if(){

}else{

}

05. java中产生随机数方法

  (int)(Math.random()*10); 

  范围:从0到1,能取到0,但是取不到1

06.多重if选择结构

  if(条件){

  }else if(){

  }else{

  }

  多重if各个分支如果顺序互换,语法不报错,但是会影响程序的运行结果 。

07.在java中,比较两个字符串是否相同,用的是equals,而不是==号。

08.嵌套if

  在一个ifelse选择结构中,又嵌套了另外一个完成的ifelse选择结构

  if(){

     if(){

}else{

}

  }else{

  }

作业时间:

1.第四章 Switch选择结构预习

2.日记本

3.单词3和4章

4.今天讲的

   产生1到3之间的随机数

   If-else

   多重if

   嵌套if

回到顶部

第四章  Switch选择结构

01.使用Switch语句常见错误:

1.case后必加break,防止case穿透

2.case后面的变量必须各不相同

3.default块顺序可以变动,但要注意其执行顺序。通常,default块放在末尾,也可以省略

4.switch后面小括号中表达式的值必须是整型或字符型。

02.通过hasNextInt()方法来判定用户录入的内容是否 是数字

04.登陆素材

        System.out.println("********欢迎进入微冷的雨购物管理系统************");

System.out.println("菜单功能:");

System.out.println("\t1.登陆系统");

System.out.println("\t2.退出系统");

System.out.println("请输入您要操作的功能,输入数字即可,亲!!!!");

System.out.println("欢迎进入主界面,该软件为您提供了丰富的功能");

System.out.println("1.客户信息管理");

System.out.println("2.购物结算");

System.out.println("3.真情回馈");

System.out.println("4.注销");

                System.out.println("是否参加优惠换购活动:");

System.out.println("1:满50元,加2元换购百事可乐饮料1瓶");

System.out.println("2:满100元,加3元换购500ml可乐一瓶");

System.out.println("3:满100元,加10元换购5公斤面粉");

System.out.println("4:满200元,加10元可换购1个苏泊尔炒菜锅");

System.out.println("5:满200元,加20元可换购欧莱雅爽肤水一瓶");

System.out.println("0:不换购");

System.out.print("请选择:");

  作业时间

     01.15分钟提问单词和各种if

     02.颁发前3名奖品

     03.自行作业

00.预习第五章 循环结构

01.日记本写一篇

02.单词

03.博客文章(if-Switch选择结构)

02.

回到顶部

第五章 循环结构(一)

1.之前学习的两种结构

   01.顺序结构

   02.分支结构

   03.循环结构

2.While循环结构

   *while循环

循环四要素:01.初始变量  02.循环条件  03.改变迭代变量的值 04.循环体

   *:通过while循环解决“张浩写1000遍好好学习的问题”

*:字符串作为循环条件

     老师每天检查张浩的学习任务是否合格,如果不合格,则继续进行。

老师给张浩安排的每天的学习任务为:上午阅读教材,学习理论部分,下午上机编程,掌握代码部分。

*:初始变量为多个值的循环

2012年培养学员25万人,每年增长25%,请问按此增长速度,到哪一年培训学员人数将达到100万人?

3.练习

  *计算100之内的偶数之和

  *查询商品价格

  *结账和找零

4.do while循环结构

answer cannot be resolved(解析)

do{

}while(条件表达式);

do{

System.out.println("已经完成编码");

System.out.println("合格了吗?(y/n)");

answer=input.next();  //n

    }while(answer.equals("n"));

do-while循环的执行机制:

首先do所在的{}里面的内容执行一遍,然后拿变量answer和固定的字符串"n"做对比,如果

条件成立,那么继续执行do{}中的内容,如果不成立,那么就退出整个do-while循环。

5.断点调试步骤

设置断点

启动调试

单步运行

调试启动后,运行到设置断点的代码行将停住

点击F6可以单步运行程序,观察程序运行过程

观察变量

单步运行时可以在“变量”视图中看到变量当前的值

发现问题

修正代码,重新运行

解决问题

二、程序调试的目的:找出缺陷原因,修正缺陷

三、程序调试的主要方法:设置断点、单步执行、观察变量

回到顶部

第六章  循环结构(二)

1.for的出现是为了精简之前while和do-while循环的语法,将之前散乱排列的其中三个要素融合到了for循环固定的语法结构中

For(表达式1;表达式2;表达式3){

  表达式1:初始变量

  表达式2:循环条件

  表达式3:迭代变量 

}

作业:第七章项目

日记

回到顶部

第八章  数组

1. 数组的定义:

解析:数组就是一组相同数据类型的集合,可以看成是一个承载一堆

相同类型数据的一个箱子。

2.定义一个变量相当于在内存上占据一块空间

  定义一个数组相当于在内存上占据一连串内存空间

3.通过length可以获取数组中一共有几个元素

4.案例

int[] nums=new int[3];

数组的类型其实上就是数组当中每个元素的类型。

String[] names=new String[3];//数组的声明

names[0]="张靓颖";

names[1]="刘德华";

names[2]="周星星";//赋值

//names[3]="巩俐";//下标越界

for(int i=0;iindex; i--) {

newNums[i]=newNums[i-1];

}

//05.给index位置重新赋值

newNums[index]=insertNum;

for (int i = 0; i < newNums.length; i++) {

System.out.print(newNums[i]+"\t");

}

}

Eg2:字符串相关

//插入算法

String[] songs={"Island", "Ocean",  "Pretty",  "Sun"};

for (int i = 0; i < songs.length; i++) {

System.out.print(songs[i]+"\t");

}

System.out.println("");

String insertSong="zoo";

//01.定义一个新数组,长度=旧数组长度+1

String[] newsongs=new String[songs.length+1];

//02.循环赋值

for (int i=0;i0) {

index=i;

break;

}

}

//04.循环后移,倒着移

for (int i = newsongs.length-1; i >index; i--) {

newsongs[i]=newsongs[i-1];

}

//05.重新给index位置赋值

newsongs [index]=insertSong;

for (int i = 0; i < newsongs.length; i++) {

System.out.print(newsongs[i]+"\t");

}

作业:1.日记本

      2.第八章预习(排序,打擂算法 ,插入算法)

     3.第七章项目

     4.上机练习1和2

3.我认为读书、首先要思考,要深入地思考。不思考,读书读多少遍也没有用。铅笔、纸,我个人认为都是读书时,非常重要的条件。阅读到一定阶段,就会思考,就会形成不同的主题。 随之,就会进行主题阅读。要学会有效地,系统地进行知识的连接。从不同的角度去创造性地思考问题。 
    4. 我平时工作很忙、下班后很累,回家后就想休息。我如何解决这种局面、首先要积极主动地去思考。不要让自己的每一天,平平淡淡地度过。自己主动地、持续地去创造一些幸福快乐的时刻、巅峰的时刻。 不要让自己的每一天碌碌无为。我的改进方法是,下班后,抽出一个小时去跑步,感受运动的巅峰时刻。这样下班后,就不很疲劳。学习、工作、休息就会非常有效率。 
   5. 没有时间来学习。 就学习本身而言,始终是最重要的事情,当然学习的方式,有很多种。 多反思,多问“为什么”,往往会找到问题的答案。我在使用番茄钟工作法之前,上班很累,效率很低,加班很多。使用番茄钟工作法之后,加班逐渐地少了。 
   6. 要学以致用,学习有目标,我在敏捷个人的年度回顾中曾提到了,像游泳时的状态,不游就会掉下去。没有目标就是这种情况。更具体的目标,就是我们面临的一个个的具体的问题。 

第九章 二重循环

回到顶部

第九章  二重循环

01.数组中插入元素的思想

   关键是步骤必须清楚

   001.将旧数组中每个元素复制到新数组中

   002.找位置:找到用户输入的歌曲song应插入的位置

        核心思想:将旧数组中第i项的值与song对比,如果

        大于0,那么证明该位置(index)就是我们要找的位置。

   003.index之后的元素后移,这里要注意,循环必须倒序执行。

       一定要注意循环条件,避免数组下标越界。

   004.给index位置赋值为song

02.二重循环

1.直角三角形

*

**

***

****

*****

*号(j)          行号(i)

1                 1

2                 2

3                 3

for(i=1;i

收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜