签到

05月06日
尚未签到

共有回帖数 0

    小小小鱼儿

    等级:
    据说学习JAVA可以逆袭高富帅,所以本屌丝来了。一直在想一个问题,电脑上的这个软件、网站是怎么做的。后来,去查资料。是用语言写出来的。哇!写出来的。什么玩意儿写出来的?编程语言。神马是编程语言?这个是8月份编程语言排行榜:

    这些都是编程语言?不认识。看资料的时候,看到这么一句话:JAVA无所不能……瞬间凌乱了有木有、不能自拔了有木有。不管到底能不能无所不能,反正我是被吸引了。怎么办?查资料啊。然后就各种找,找JAVA简介、跑书店去看JAVA书啊。各种看不懂啊!无语了,那看视频吧,搜视频,好多人的视频,我晕,有啥区别? 群里前辈推荐什么马士兵、李兴华等老师的视频教程, 我看李兴华那个有视频还有电子书,书和视频双剑合并学肯定不错,就用电驴全给DOWN下来了《Java开发实战经典》就是你了,逆袭高帅富的路开始吧。
    第一章讲JAVA历史还有如何写出来一个简单的JAVA程序“Hello Word”。那就开始学吧,本屌在这里献上逆袭之路的点点滴滴。望,有志同道合的一同逆袭高富帅。技术牛人呢就当路过勿喷、勿喷,看的顺眼的可以指点指点,在下感激不尽。还是希望你们多指点指点。帖子将会在java吧、CSDN、java eye、51cto等技术论坛贴出,目的是希望更多的人能一起学习,一起进步。少年们开始吧。
    安装JDK没什么需要注意的,下载好想用的版本,下一步、下一步就好了。主要是配置了:设置Path路径。方法为:右键【我的电脑】→【属性】→【高级系统设置】→【高级】→【环境变量】找到Path变量,选中,然后点击系统变量菜单中的【编辑】按钮,在这个路径的最后加“;”(英文状态下)然后输入你安装JDK的所在目录,到bin文件夹下,例如:D:javajdk_1.5bin。设置完成后点击确定。现在就可以去验证喽。打开命令行(win+r,输入cmd回车)输入javac如果出现帮助,则证明安装成功。什么是Java?
    Java是Sun公司开发出来的一套编程语言,主席设计是James Gosling,最早源于一个叫Green的项目,这个项目原来的目的是为家用电子消费产品开发一个分布式代码系统,这样就可以通过网络对家用电器进行控制。还是Sun的工程师准备采用C++,但由于C++过于复杂,安全性差,最后决定基于C++开发一种新语言Oak(Java的前身),Oak是一种用于网络的、精巧而安全的语言,Sun公司曾以此投标过一个交互式电视项目,但结果被SGI(美国硅图公司成立于1982年,是一个生产高性能计算机系统的跨国公司。它提供世界上最优秀的服务器系列以及具有超级计算能力的可视化工作站。)打败。于是当时的Oak几乎“无家可归”,恰巧这时,Mark Ardreesen开发的Mosaic和Netscape启发了Oak 的项目组成员,Sun的工程师们用Java编制了HotJava浏览器,从此Java进军了Internet。
    Java语言发展至今经历了一系列的过程,有一下3个发展方向:
    J2SE:Java 2 Platform Standard Edition。包含构成Java语言核心的类,如数据库连接、接口定义、输入/输出和网络编程。
    J2ME:Java 2 Platform Micro Edition。包含J2SE中一部分类,用于消费类电子产品的软件,如呼机、智能卡、手机、PDA和机顶盒。
    J2EE:Java 2 Platform Enterprise Edition。Enterprise Edition(企业版)包含J2SE中的所有类,并且还包含用于开发企业级应用的类,如EJB、Servlet、JSP、XML和事物控制,也是现在Java应用的主要方向。在2005年Java十周年大会后,这3项更名:
    J2SE更名为JAVA SE。
    J2ME更名为JAVA ME。
    J2EE更名为JAVA EE。

    Java的开发环境主要使用JDK,JDK可以在Sun公司的官方网站中下载,网址为:www.sun.com
    JDK的安装与配置:
    编写第一个Java程序:
    打开一个记事本,命名:Hello.java然后,右键用记事本打开,输入以下代码:
    public class Hello{
    public static void main(String args[]){
    System.out.println(“Hello World!!”);
    }
    }
    为什么这么写?我也不知道啊。
    然后打开命令行,进入到文件的那个目录下,输入javac Hello.java 回车执行,据说这是在对程序进行编译(编译是什么?),编译完成后会发现在目录里多了一个Hello.class的文件,然后再在刚才的命令下边输入java Hello 回车执行。你会发现下面出来个Hello World!!哈哈Hello World!!诶?怎么这个和代码小括号里边的内容一样呢?我试着把Hello World!! 改为 Hello 少年!见证奇迹的时刻来了,我竟然成功了,哈哈。

    刚发了我第一天的学习成果(,今天在啃第二章,工作之余发贴,晚上回去学习第二章,明天发第二章的学**结,希望各位老鸟留点经验什么的,感激不尽。新手,大家可以各抒己见,共同讨论学习。谢谢各位。
    第二章 简单的Java程序

    一个简单的Java范例
    定义一个简单类:
    public class TestJava { //(有没有发现着两行还是一样的?)
    public static void main(String args[]){ //Java的一个简单范例,输出和//乘方
    int num = 10; //定义整形变量
    num = 30; //修改变量内容
    System.out.println(“num的内容是:”+num); //输出内容 (这都是什么啊)
    System.out.println(“num * num = ”+num*num); //输出乘方
    }
    }
    程序运行结果:
    num的内容是:30
    num*num=900
    “//”后面的内容没有输出?(原来这个叫注释,不会被编译)
    public class 是Java中的关键字,表示的是定义一个类,在Java中所有操作都是由类组成的。TestJava是程序中类的名称。(原来如此)因为主方法(是什么?)写在此类之中,所以称主类。

    Java的基本组成是类,使用public class 和 class 都可以声明一个类,但是前者类名称必须与文件名一致,后者文件名称可以与类名称不一致,但是执行时必须执行生成后的*.class文件。
    总结:
    定义一个类:
    public class 是关键字、名称是 TestJava、下面是主方法还要有大括号、“//”是注释
    public class aa{ //发现生成的是aa.java了
    public static void main(String[] args){
    int num = 10; //定义一个整型变量 int表示变量类型为//整型(是什么?)
    num = 30; //变量的可以改变,它又等于30了?
    System.out.println(); //输出 有换行
    System.out.print(); //输出 没有换行
    }
    }
    Java程序的注释
    注释的作用是让别的用户可以方便的阅读每段程序,提高程序的可读性。(读程序干嘛?)还可以屏蔽掉一些暂时不用的词。
    //单行注释
    /*
    多行注释
    */
    /**
    *这个是文档注释 是这个样子的
    */
    Java中的标识符
    Java中的包、类、方法、参数和变量名的命名:
    只能由字母、数字、下划线(_)、美元符($)组成,不能以数字开头、不能有空格、不能是Java中的关键字

    Java中的关键字

    这些是Java中的关键字。需要注意的:
    (1)goto、const在Java中没有任何意义,但也是Java中的保留字,与其他关键字一样不能用来做标识符。
    (2)true、false、null虽然不是关键字,但却作为单独的标识类型,也不能直接使用。
    (3)assert和enum关键字是Java新增内容,assert是JDK1.4加的,enum是JDK1.5加的。
    标识符不用死记,在使用的过程中会慢慢记住。对一门编程语言的学习多联系是最好的掌握方法。(李老师赠)

    变量和常量


    变量是利用声明的方式将内存中的某个内存块保留下来以供程序使用。可以声明的数据类型为整型、字符型、浮点型或是其他的数据类型,作为变量的保存使用。变量可以用来存放数据,而使用变量之前必须先声明它的数据类型。
    举例说明,在程序中声明一个可以存放整数的变量:
    int num; //int 是整数类型
    声明多个:
    int num,num1,num2;
    Java的变量类型:
    整型(int)、长整型(long)、短整型(short)、浮点型(float)、双精度浮点型(double)、字符型(char)和布尔型(boolean)。
    习题答案
    public class aa{
    public static void main(String[] args){
    System.out.println(3*3);
    }
    }

    以上是我第二天的学习内容。那个习题答案对不对啊。题是补全那个程序。

    第三章 Java基础程序设
    数据类型划分:

    Java数据类型可分为基本数据类型与引用数据类型。
    原有数据类型也称为基本数据类型,它们包括了最基本的boolean、byte、char、short、int、long、float与double等类型。另一种数据类型为引用类型,它是以一种特殊的方式指向变量的实体,这种机制类似于C/C++的指针。这类变量在声明时不会分配内存,必须另外进行开辟年内存空间的操作,如字符串与数组均属于这种数据类型。(这是什么?)
    常量就是一个固定的数值,是不可改变的,例如数字1、2就是整型常量。(常量做什么用啊)
    Java中有8中基本数据类型:




    整数类型
    在Java中,整数数据类型可以分为long、int、short、byte、四种,long为64位,也就是8个字节(bytes),可表示范围为-9223372036854775808~9223372036854775807;int为32位,也就是4个字节,表示范围为-2147483648~2147483647;若数据值的范围为-32768~32767时,可以声明为short(短整数)类型;若数据值更小,在-128~127之间时,可以使用byte类型,以节省内存空间。例如,声明一个短整型变量sum时:
    short sum;
    /*
    int sum; 整型?
    long sum; 长整型?貌似是
    */
    经过声明后,Java即会在可使用的内存空间中寻找一个占有两个字节的块供sum变量使用,同时,这个变量的范围只能在-32768~32767之间。
    在Java中对于一个整型常量,其默认的是int类型,所以在声明时不要超过int数据类型的范围。代码验证:
    public class DataDemo1{
    public void main(String[] args){
    int num = 9999999999; //错误的
    }
    }
    错误提示为:The literal 9999999999 of type int is out of range
    我改为long num = 999999999;为什么也不行呢?提示同样的错误。
    改为short提示也是同样的错误。(哦,默认的是int类型)
    数据的溢出
    public class DataDemo02{
    public static void main(String[] args){
    int max = Integer.MAX_VALUE;
    System.out.println(“整型的最大值:”+max);
    System.out.println(“整型的最大值+1:”+(max+1));
    System.out.println(“整型的最大值+2:”+(max+2));
    }
    }
    运行结果:
    整型的最大值:2147483647
    整型的最大值+1:-2147483648
    整型的最大值+2:-2147483647
    最大值+1会变为范围中最小的那个值;+2会变为次小的那个值,这就是数据类型的溢出。想要避免这种情况的发生,需要把数据类型转换为更大的表示范围的数据类型,如长整型。
    public class DataDemo03{
    public static void main(String[] args){
    int max = Integer.MAX_VALUE; //这是什么?
    System.out.println(“整型的最大值:”+max);
    System.out.println(“整型的最大值+1:”+(max+1));
    System.out.println(“整型的最大值+2:”+(max+2L));
    System.out.println(“整型的最大值+2:”+((long)max+2));
    }
    }
    运行结果:
    整型的最大值:2147483647
    整型的最大值+1:-2147483648
    整型的最大值+2:2147483649
    整型的最大值+2:2147483649
    那如果long溢出了怎么办呢?
    long溢出只能加上变量值的界限检查,在运行时才不会出错。(虽然不知道是什么)
    字符类型
    字符类型在内从中占有两个字节,可以用了来保存英文字母。计算机处理字符类型时,是把这些字符当成不同的整数来看待,因此,字符类型也是整数类型的一种。
    Java所使用的Unicode字符码系统,为每个字符制订了一个唯一的数值,因此,在任何语言、平台、程序中都可以安心地使用。Unciode中的小写a是以97来表示的:
    public class DateDemo04{
    public static void main(String[] args){
    char ch1 = ‘a’;
    char ch2 = 97;
    System.out.println(“ch1= ” +ch1);
    System.out.println(“ch2 = ”+ch2);
    }
    }
    程序运行结果:
    ch1 = a
    ch2 = a
    给字符变量赋值可以使用数值和字符,它们都可以使程序正确地运行。字符要用一对单引号’’括起。
    转义字符:


    public class DataDemo05 {
    public static void main(String[] args){
    char ch1 = ‘”’;
    char ch1 = ‘\’;
    System.out.println(“ch1 = ” +ch1);
    System.out.println(“ch2= ” +ch2);
    System.out.println(“”Hello World””);
    }
    }
    运行结果:
    ch1 = “
    ch2 =
    “Hello World”
    浮点数类型与双精度浮点数类型
    在日常生活中经常会使用小数类型的数值,如身高、体重等,整数将不能满足程序设计者的要求。在数学中,这些带有小数点的数值称为实数,在Java中,这种数据类型称为浮点数类型(float),其长度为332个字节,有效范围为-3.4E10308~3.4E10308。当浮点数的表示范围不够大时,还有一种双精度(double)浮点数可供使用。双精度浮点数类型的长度为64个字节,有效范围为-1.7E10308~1.7E10308。
    浮点数的表示方式除了指数的形式外,还可用带有小数点的一般形式来表示。例如,想声明一个double类型的变量num与一个float类型的变量sum,并同时给sum赋初值3.0,可以在程序中作出如下声明及设置:
    double sum;
    float sum = 3.0f;
    声明之后,Java会在可使用的内存空间中寻找一个占有8个字节的块供num变量使用,其范围在-1.7E10308~1.7E10308之间,寻找另一个占有4个字节的块供sum变量使用,而这个变量的范围只能在-3.4E10308~3.4E10308之间。在此例中,sum的初值为3.0。
    double num1 = -6.3e64;
    double num2 = -5.34e16;
    float num3 = 7.32f;
    float num4 = 2.456E67; //错误,超出float的范围

    使用浮点型数值时,默认的类型是double,在数值后可加上D或是d,作为double类型的标识。在Java中,D或是d是可有可无的。在数据后面加上F或f,则作为float类型的识别。若没有加上,Java就会将该数据视为double类型,而在编译时就会提示:可能会失去精度的错误。
    public class DataDemo06{
    public static void main(String[] args){
    float num = 3.0f;
    System.out.println(“l两个小数相乘:”+num*num);
    }
    }
    程序运行结果:
    两个小数相乘:9.0
    布尔类型
    布尔(boolean)类型变量只有true和false两种。也就是说,当将一个变量定义成布尔类型时,它的值只能是true或false,除此之外,没有其他的值可以赋值给这个变量。
    boolean flag = true; //声明布尔类型变量flag,并赋值为true

    public class DataDemo07{
    public static void main(){
    boolean flag = true;
    System.out.println(“flag = ”+flag);
    }
    }
    运行结果:
    flag = true
    布尔值通常用来控制程序的流程。


    基本数据类型的默认值
    在Java中,若在变量的声明时没有给变量赋初值,则会给该变量赋默认值,如下图:


    数据类型的转换
    自动类型转换、强制类型转换
    数据类型的自动转换
    自动转换数据类型需注意:
    (1)转换前的数据类型与转换后的数据类型兼容
    (2)转换后的数据类型的表示范围比转换前的类型大
    (3)类型的转换只限该行语句,并不会影响原先定义的变量类型,通过类型的自动转换可以保证数据的精确度。这种转换方式也称为扩大转换。
    public class DataDemo08{
    public static void mian(String[] args){
    int x = 30;
    float y = 22.19f;
    System.out.println(“x/y = ”+(x/y));
    System.out.println(“10/3.5 = ”+(10/3.5));
    System.out.println(“10/3 = ”+(10/3));
    }
    }
    运行结果:
    x/y = 1.3519603
    10/3.5 = 2.857142857142857
    10/3 = 3
    从结果可以发现,in类型与float类型进行计算之后,输出的结果会变成float类型,一个整型常量和一个浮点型常量进行计算之后,结果也会变为一个浮点数据,而如果是两个int类型的常量进行计算,最终结果还是int类型,而其小数部分将会被忽略。
    也就是说,假设有一个整数和双精度浮点数作运算时,Java会把整数转换成双精度浮点数后再作运算,运算结果也会变成双精度浮点数。
    String可以像普通变量那样直接通过赋值的方式进行声明。字符串是使用“””括起来的。两个字符串之间可以使用“+”进行连接。
    任何数据类型碰到String类型的变量或常量之后都向String类型转换。(String 是什么)
    publci class DataDemo09{
    public static void main(String[] args){
    String str = “test”;
    int x = 30;
    str = str + x;
    System.out.println(“str = ” + str);
    }
    }
    程序运行结果:
    str = test 30

    public class DataDemo10 {
    public static void main(){
    int i = 1;
    int j = 2;
    System.out.println(“1+2 = ” + i + j);
    }
    }
    运行结果:
    1+2=12
    从以上的输出结果中可以发现,程序的主要目的是要计算i+j的值,但是由于碰到了字符串常量,所以所使用的数据类型都会变为字符串常量,也就是说此时的“+”实际上表示的是字符串连接的含义,对于以上的程序,如果要得到正确的结果,则必须修改为:
    System.out.println(“1+1 = ” + (i+j)); //加上括号之后,就表示输出时先计算两个数字相加的结果。

    楼主 2016-05-11 12:52 回复

共有回帖数 0
  • 回 帖
  • 表情 图片 视频
  • 发表

登录直线网账号

Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号 意见反馈 | 关于直线 | 版权声明 | 会员须知