仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1850|回复: 19
打印 上一主题 下一主题

[学习教程] JAVA网站制作之java初学者要弄清

[复制链接]
灵魂腐蚀 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:44:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
还是要自己一点一点写代码,然后编译,改错再编译好那。还有最重要的是.net的编译环境非常好,你甚是不需要了解太多工具,对于简单的系统,你可以之了解一些语法就哦了。初学1。实例办法,类办法,机关器办法

  我们一般所说的办法系指实例办法,就像c言语中的函数一样,其详细办法我就不必说了,在这里我次要是用它来辨别类办法和机关器办法.类办法与实例办法最年夜的区分是:在情势上类办法多一个static,在用法上,不用创立对象便可间接挪用类办法(而实例办法却必定要先创立对象,再经由过程对象挪用)。

  eg:

classadd
{
staticintaddem(intop1,intop2)
{
returnop1+op2;
}
}
publicclassxxf
{
publicstaticvoidmain(String[]args)
{
System.out.println("addem(2,2)="+add.addem(2,2));
}//间接用类名作为对象挪用类办法
}

  注:也可按一般的办法,即先创立对象,再挪用办法,不外,这时候static就无任何意义了。

  再说说机关器办法,它是用来初始化对象中的数据的一种办法,创立很简单,只需在类中加上一个与这个类同名的办法,不必要在后面加任何会见申明符大概前往范例,别的,机关器也一样能够向办法一样传送参数.

  eg:

classdata
{
privateStringdata1;//事前声明

data(Strings)
{
data1=s;/*经由过程吸收数据来初始化变量.(注:不克不及在机关器内
声明变量,事前在外就要声明.)*/
}

publicStringgetdata()
{
returndata1;
}
}

publicclassxxf
{
publicstaticvoidmain(String[]args)
{
System.out.println((newdata("Iloveyou")).getdata());/*经由过程传送参数挪用机关器新建一
个对象,再经由过程对象挪用办法失掉数据*/
}
}


2。接口与类

  类是对一类特定对象的规格申明,我们能够类界说创立对象,经由过程创立对象来组合一切属于该类的组件,而接口不克不及如许做.而接话柄质上就是一个常量和笼统办法的汇合,要利用一个接口,就必要在类中完成这个接口,然后作为类界说的一部分,编写接口中声明的每个办法,接口中的办法永久是public,abstract,接口中的常量永久是publicstatic和final,因而不必要为它们申明属性。

  由于在Java中不撑持多重承继,可是,能够用接口来完成相似的功效,这是接口的主要感化之一。

  eg:

interfaceanyone//界说一个接口
{
finaldoublePI=3.1416;
voidsetNumber(intnumber);
intgetNumber();
}
interfaceanyother//界说另外一个接口
{
voidsetString(Stringstr);
StringgetString();
}

classxxfimplementanyone,anyother//界说一个类,并利用两个接口
{
intnumber;
Stringstr;
publicxxf(){}
voidsetNumber(intnumber)
{
this.number=number;
}
voidsetString(Stringstr)
{
this.str=str;
}
voidintgetNumber(){}//能够为一个空完成.
voidStringgetString(){}
}
//在类中必需完成接口中声明的一切办法.(固然也可不用,可是要用到适配器类或用笼统类)

3。String类和StringBuffer类

  它们都是处置字符串的类,可是它们有一个最年夜的区分,那就是。

  eg1:

......
//omitsomecode
Strings1="Youarehired!";
System.out.println(s1.replace(′h′,′f′));//用f把字串中的h交换了
System.out.println(s1);
......
//omitsomecode

  运转了局:

   Youarefired!
   Youarehired!

  了局剖析:

  从了局,分明可知,s1的值并没有被改动,而第一行了局只是屏幕内容的交换.

  eg2:

......
//omitsomecode
StringBuffers2=newStringBuffer("HellofromJava!");
s2.replace(6,10,"to");
System.out.println(s2);
......
//omitsomecode

  运转了局:

  HellotoJava!

  了局剖析:

  明显,s2的值已改动.
 
4。位逻辑与前提逻辑

  起首声明,为了与位逻辑更好辨别开来,我把一般所说的逻辑取了一般名叫做前提逻辑.

  它们都有各自的操纵符,位逻辑操纵符有:&(与运算),^(异或运算),|(或运算);前提逻辑操纵符有:&&(并
且),||(大概)。

  位逻辑运算一般是针对两个数而言,实施位操纵;而前提逻辑运算是针对两个前提表达式而言,实施前提操纵.实在,位逻辑操纵符一样能够完成前提操纵,可是此时有一个主要的区分:用位操纵符时,不论操纵符双方的前提表达式成不建立,它都要统统举行运算判别,而前提逻辑操纵符纷歧样了,假如经由过程左边的操纵数就能够举行它们必要的判别,那末它就不会再盘算右边的操纵数了,这类情形叫短路.空话少说!且看下例.

  eg1:

......
//omitsomecode
doublevalue=0;
if(value!=0&&1/value<1000){
System.out.println("Thevalueisnottoosmall.");
}
else{
System.out.println("Thevalueistoosmall.");
}
......
//omitsomecode

  运转了局:

  Thevalueistoosmall.

  了局剖析:

  照理说应会呈现除数为0的毛病,可是我方才说了,因为前提逻辑操纵符是短路操纵符,明显,value!=0不建立,当即便可作出判别应实行else后的语句,以是它就不再见运算判别1/value<1000了.假如不懂请再看一
例:

  eg2:

......
//omitsomecode
doubleint1=0,int2=1,int3=1;
if(int1!=0&(int2=2)==1){}
System.out.println("int2="+int2);
if(int1!=0&&(int3=2)==1){}
System.out.println("int3="+int3);
......
//omitsomecode

  运转了局:

   int2=2.0
   int3=1.0

  了局剖析:

  我想不必我剖析了,你应当懂了吧.

5。实例变量与类变量

  能够经由过程两种办法在类中存储数据───作为实例变量和类变量.实例变量是特定于对象的,假如你有两个对象(即一个类的两个实例),每个对象中的实例变量自力于另外一个对象中的实例变量的;另外一方面,两个对象的类变量均指向不异的数据,并因而面保留不异的值,换句话说,类变量被类中的一切对象共享.差点忘了,它们在情势上的区分,类变量在声明时比实例变量多一个static.

  eg:

classdata
{
publicintintdata=0;//明显,intdata在这儿是实例变量
}
publicclassexam
{
publicstaticvoidmain(String[]args)
{
dataa,b;
a=newdata();
b=newdata();
a.intdata=1;
System.out.println("b.indata="+b.intdata);
}
}

  运转了局:

  b.intdata=0

  了局剖析:

  能够看出,a.intdata的值固然变了,但并没有影响b.intdata.可是假如在data类中声明intdata时,在其后面加上static就酿成类变量了(即:publicstaticintintdata=0;),则此时运转了局会变成:

  b.intdata=1

  此次a.intdata值的改动可把b.intdata影响了,现实上,对象a和b的类变量均指向不异的数据,一切值一样,这就是类变量的感化。


轮性能微软曾做过一个例子,就是同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。呵呵,这说明了什么,.net的全方位比java好。但是有的人说.net不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net,只是推出了跨语言的.net,
爱飞 该用户已被删除
沙发
发表于 2015-1-21 13:43:48 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
老尸 该用户已被删除
板凳
发表于 2015-1-30 19:31:59 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
简单生活 该用户已被删除
地板
发表于 2015-2-6 15:19:57 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
金色的骷髅 该用户已被删除
5#
发表于 2015-2-16 21:06:33 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
变相怪杰 该用户已被删除
6#
发表于 2015-2-25 23:51:17 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
小女巫 该用户已被删除
7#
发表于 2015-3-1 17:29:04 | 只看该作者
是一种使用者不需花费很多时间学习的语言
乐观 该用户已被删除
8#
发表于 2015-3-10 21:20:43 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
admin 该用户已被删除
9#
发表于 2015-3-17 10:10:26 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
不帅 该用户已被删除
10#
发表于 2015-3-17 10:10:29 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
灵魂腐蚀 该用户已被删除
11#
 楼主| 发表于 2015-3-25 08:59:44 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
分手快乐 该用户已被删除
12#
发表于 2015-3-27 20:11:05 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
小魔女 该用户已被删除
13#
发表于 2015-4-1 14:54:29 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
透明 该用户已被删除
14#
发表于 2015-4-3 16:58:04 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
深爱那片海 该用户已被删除
15#
发表于 2015-4-14 16:24:08 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
再见西城 该用户已被删除
16#
发表于 2015-4-23 17:53:49 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
兰色精灵 该用户已被删除
17#
发表于 2015-4-28 12:04:55 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
飘灵儿 该用户已被删除
18#
发表于 2015-5-7 08:04:32 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
只想知道 该用户已被删除
19#
发表于 2015-5-10 10:15:13 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
海妖 该用户已被删除
20#
发表于 2015-7-7 20:29:15 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 13:34

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表