java中什么是单列,java中单列模式,我要详细点的,麻烦各位给我介绍一下
大家好,关于java中什么是单列很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于java中单列模式,我要详细点的,麻烦各位给我介绍一下的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
java中String[][] 是什么东西string[]又是什么东西
String[][]是二维数组。例如:String[][]str=newString[4][4],这是创建了一个有4行4列元素的数组。
String[]代表一维数组。例如:String[]str=newString[4],这个创建一个有4个元素的数组。
String[]代表格式为String数组;如str[1] str[2]等。String[][]代表多维数组了.[][],可以理解为几行几列。
String是编程语言中的字符串,String类是不可变的,对String类的任何改变,都是返回一个新的String类对象。
扩展资料:
String的主要功能:
String类提供的成员执行以下操作:比较 String对象;返回 String对象内字符或字符串的索引;复制 String对象的值;分隔字符串或组合字符串;修改字符串的值;将数字、日期和时间或枚举值的格式设置为字符串;对字符串进行规范化。
使用 Compare、CompareOrdinal、CompareTo、Equals、EndsWith和 StartsWith方法进行比较。
使用 IndexOf、IndexOfAny、LastIndexOf和 LastIndexOfAny方法可获取字符串中子字符串或 Unicode字符的索引。
使用 Copy和 CopyTo可将字符串或子字符串复制到另一个字符串或 Char类型的数组。
使用 Substring和 Split方法可通过原始字符串的组成部分创建一个或多个新字符串;使用 Concat和 Join方法可通过一个或多个子字符串创建新字符串。
使用 Insert、Replace、Remove、PadLeft、PadRight、Trim、TrimEnd和 TrimStart可修改字符串的全部或部分。
使用 ToLower、ToLowerInvariant、ToUpper和 ToUpperInvariant方法可更改字符串中 Unicode字符的大小写。
使用 Length属性可获取字符串中 Char对象的数量;使用 Chars属性可访问字符串中实际的 Char对象。
使用 IsNormalized方法可测试某个字符串是否已规范化为特定的范式。使用 Normalize方法可创建规范化为特定范式的字符串。
参考资料:百度百科-string
java项目是什么意思哦,是软件还是WEB
Java是Sun公司推出的一种编程语言。它是一种通过解释方式来执行的语言,语法规则和C++类似。同时,Java也是一种跨平台的程序设计语言。用Java语言编写的程序叫做“Applet”(小应用程序),用编译器将它编译成类文件后,将它存在WWW页面中,并在HTML档上作好相应标记,用户端只要装上Java的客户软件就可以在网上直接运行“Applet”。 Java非常适合于企业网络和Internet环境,现在已成为Internet中最受欢迎、最有影响的编程语言之一。 Java有许多值得称道的优点,如简单、面向对象、分布式、解释性、可靠、安全、结构
JAVA介绍
一、前言
『Java』从1995年的暑假开始在计算机业界就受到了高度注意,特别是在Internet和多媒体(Multimedia)相关产品类方面。Java为何有如此这么大的魅力?人作如此的比喻: Java在全球资讯网(World Wide Web, WWW)地位就如同电子表格(Spreadsheet)与个人计算机(PC)的关系。那Java究竟有那些特色呢?
Java是一种软件技术
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
是一种为 Internet发展的计算机语言
是一种使网页(Web Page)产生生动活泼画面的语言
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
是一种语言,用以产生「小应用程序(Applet(s))」
是一种简化的C++语言是一种安全的语言,具有阻绝计算机病毒传输的功能
是一种将安全性(Security)列为第一优先考虑的语言
是一种使用者不需花费很多时间学习的语言
是一种突破用户端机器环境和CPU结构的语言
是一种「写一次,即可在任何机器上执行(Write OnceRun Anywhere)」的语言是有史以来,第一套允使用者将应用程序(Applications)通过Internet从远端的服务器(Remote Server)传输到本地端的机器上(LocalMachine)并执行
是一种应用程序提供者不需要知道使用者的计算机硬件(如:Sun, Intel,或MAC等)与软件(如:SW- UNIX, MAC O/S, Windows,或NT等)环境的语言(Kestenbaum, 1995)。
下面将依序地介绍Java,首先是Java的发展历史与Java语言介绍,其次依序是Java Applet和HotJava的简单介绍。
二、Java FAQ
下面以问答的方式来说明Java的发展历史与其背景(下列内容整理自 Java FAQ list and Tutorial和The Java Language: A White Paper,读者若欲深入了解,请自行参阅原文):
Java何时开始发展?(When)
最早大概可追溯至1991年四月份,Sun的绿色计划(Green Project)开始着手于发展消费性电子产品(Consumer Electronics),所使用的语言是C、C++、及Oak(为Java语言的前身),后因语言本身和市场的问题,使得消费性电子产品的发展无法达到当初预期的目标,再加上网络的兴起,绿色计划也因此而改变发展的方向,这已是1994年了。
为何称之为Java?(Why)"Java"是美国SUN计算机公司Java发展小组历经无数次的激烈讨论之后才被选择出。生动(Liveliness)、动画(Animation)、速度(Speed)、交互性(Interactivity)为当初选择名字时所欲表达出的特色。"Java"是在无数的建议中脱颖而出的,而"Java"不是由几个单字的首字所组成,而是从许多程序设计师钟爱的热腾腾、香浓咖啡中产生灵感的。
谁开发了Java?(Who) Java是美国SUN计算机公司Java发展小组开发的,早期的成员(绿色工程)是Patrick Naughton, James Gosling,& Mike Sheridan,而现在大家较为熟悉的成员是James Gosling。
在那里开发了Java?(Where)
也就是问Java的出生地?答案是美国。
如何可以找到所需的Java信息?(How to)
在网路上,您可以连到Sun公司的Java WWW网站,URL是http://java.sun.com/,或是 http://www.javasoft.com/。在那里几乎可以找到您所需要的所有Java信息,但是语言多少是一个障碍,至少对某些人而言;没关系,目前国内已有很多个网站提供中文 Java信息。在清华和中科院的FTP站点上有不少有关资料。想象以后应会有更多的站点提供相关信息。
如何才能看到Java的效果?(How Do I)
首先您需要有含有Java解释器的浏览器(Browser),例如:Netscpae公司的Netscape Navigator 2.0以上或是Sun公司的HotJava浏览器,对个人计算机使用者而言,操作系统需是Windows 95或是Windows NT。
Java是因为撰写C++语言程序时的困难而研制开的,起先,只是一个消费性电子产品大计划中的一部份,C++语言是当初被考虑采用的,但从一开始的编译问题一直到最后的一连串问题迫使得放弃C++语言,而有Java语言的产生。Sun是要Java成为一个简单(Simple)、面向对象的(Object Oriented)、分布式的(Distributed)、解释的(Interpreted)、健壮的(Robust)、安全的(Secure)、结构中立的(Architecture Neutral)、可移植的(Portable)、高效能的(High Performance)、多线程的(Multithreaded)、动态的(Dynamic)的程序语言(摘译自 TheJava Language: A White Paper, 1995)。
在Sun的Java语言白皮书中明白地说明上述Java语言的技巧。若以木工为比喻,一个面向对象的木工,他(她)最主要的重点是即将要做的木椅子,其次才是所需要的工具;反之;一个以非面向对象的木工,他(她)所关心的只是工具。最近的即插即用(Plug and Play)亦是面向对象设计的重点。分布式的(Distributed):Java有一个很周全的程薪录JAVA介绍。
一、
『Java』从1995年的暑假开始在计算机业界就受到了高度注意,特别是在Internet和多媒体(Multimedia)相关产品类方面。Java为何有如此这么大的魅力?人作如此的比喻: Java在全球资讯网(World Wide Web, WWW)地位就如同电子表格(Spreadsheet)与个人计算机TTP和FTP等TCP/IP通讯协定相配合。Java应用程序(Applications)能在网路上开启及连结使用物件,就如同透过URLs连结使用一个本地文件系统(Local File System)。健壮的(Robust):由Java所编写出的程序能在多种情况下执行而具有其稳定性。Java与 C/C++最大不同点是Java有一个指针模型(Pointer Model)来排除内存被覆盖(Overwriting Memory)和毁损数据(Corrupting Data)的可能性。
安全的(Secure):Java是被设计用于网络及分布式的环境中,安全性自必是一个很重要的考虑。Java拥有数个阶层的互锁(Interlocking)保护措施,能有效地防止病毒的侵入和破坏行为的发生。
结构中立的(Architecture Neutral):一般而言,网络是由很多不同机型的机器所组合而成的,CPU和作业系统体系结构均有所不同;因此,如何使一个应用程序可以在每一种机器上执行,是一个难题。所幸,Java的编译器产生一种结构中立的目标文件格式(Object File Format);这使得编译码得以在很多种处理器中执行。
可移植的(Portable):原始资料型式的大小是被指定的,例如"float"一直是表示一个32位元IEEE 754浮点运算数字,因绝大多数的CPU都具有此共同特征。程序库属于系统的一部份,它定义了一些可移植的程序接口,Java本身具备有很好的可移植性。
解释的(Interpreted):Java解释器能直接地在任何机器上执行Java位元码(Bytecodes),因此在进行程序连结时,时间的节省,这对于缩短程序的开发过程,有极大的帮助。
高效能的(High Performance):Java位元码迅速地能被转换成机器码(Machine Code),从位元码转换到机器码的效能几乎与C与C++没有分别。
多线程的(Multi threaded):Java语言具有多线程的功能,这对于交互回应能力及即时执行行为是有帮助的。
动态的(Dynamic):Java比C或C++语言更具有动态性,更能适应时刻在变的环境, Java不会因程序库的更新,而必须重新编译程序。
此外,Hank Shiffman(Making Sense of Java)亦针一般对Java的错误看法及观念提出他的说明,特在此摘译如下:
"Java是一种编写Web Pages的一种语言,就如同HTML和VRML一样"事实上,Java并不像是HTML此一类的描述语言(Description Language),而是一种编程语言(Programming Language)。描述语言标明内容和位置,而编程语言描述一种产生结果的过程。
2."Java语言容易学习和使用,不像C、C++和其它程序语言"
Java是一种编程语言。Java容易学吗?Java或许是比C或C++容易学,但仍是一种编程语言,而不是一种描述语言。
3."Java码是可移植的,但C及C++不是"
Java原代码(Source Code)是比C语言来得可移植一点,差别在于Java的目标码。 Java码在一种机器上进行编译,而能在所有的机器上执行,只要那部机器上有 Java解释器。
4."Java能被拓展而在机器上执行任何事情"
理论上,Java Applet(Java小应用程序)能做任何事情,如模拟3D VRML模型、播放电影、产生音频....等。但事实上,一个小应用程序(Applet)仅能在那一页上被执行,而无法在那一页之外执行。同时,Java亦受限于程序库的功能。
5."Java是适合于建立大型的应用程序"
如果Java适合于大型程序,则Java就不适合应用于Web浏览器了。第一个商业性的Java Applets(Applix's Java-Based Spreadsheet)并不是全然使用Java,它只使用Java作为用户接口,而所有的处理工作,是用CGI码。
6."Java是解释执行的,Basic是解释执行的,因此Java=Basic"
虽然Java的确是使用解释器,但事实上,Java则与C或C++等完全编译语言较为相近,但与Basic或APL等完全解译语言较不相近。
7."Java删除了CGI命令稿(Scripts)和程序的需求"
Java Applets将会取代部份CGI的用途。在有些情况,Java Applets能够取代一些服务器端代码(Server-Side Code),但大多数的情况,基于安全性理由或是效能的考虑,Java仍无法全然取代CGI Scripts。
8."Netscape's JavaScript是与Java有相关"
除了名称之外,Java和JavaScript是有一点点相关。JavaScript是一种命令稿语言,是可以在HTML页中使用。Java码并未出现在HTML中,而在HTML中通过一个链结来链结编译码组。Java和JavaScript之间的关系就如同C语言和C Shell一般。
java中单列模式,我要详细点的,麻烦各位给我介绍一下
单例模式分三种:懒汉式单例、饿汉式单例、登记式单例三种。
单例模式有一下特点:
1、单例类只能有一个实例。
2、单例类必须自己自己创建自己的唯一实例。
3、单例类必须给所有其他对象提供这一实例。
一、懒汉式单例
在类被加载的时候,唯一实例已经被创建。这个设计模式在Java中容易实现,在别的语言中难以实现。
/**
* Created by IntelliJ IDEA.
* User: leizhimin
* Date: 2007-9-11
* Time: 14:57:08
*<<Java与模式>>单例模式-懒汉式单例
*/
public class LazySingleton{
/**
*私有静态对象,加载时候不做初始化
*/
private static LazySingleton m_intance=null;
/**
*私有构造方法,避免外部创建实例
*/
private LazySingleton(){
}
/**
*静态工厂方法,返回此类的唯一实例.
*当发现实例没有初始化的时候,才初始化.
*@return LazySingleton
*/
synchronized public static LazySingleton getInstance(){
if(m_intance==null){
m_intance=new LazySingleton();
}
return m_intance;
}
}
二、饿汉式单例
在类加载的时候不创建单例实例。只有在第一次请求实例的时候的时候创建,并且只在第一次创建后,以后不再创建该类的实例。
/**
* Created by IntelliJ IDEA.
* User: leizhimin
* Date: 2007-9-11
* Time: 14:45:25
*<<Java与模式>>单例模式-饿汉式单例
*/
public class EagerSingleton{
/**
*私有的(private)唯一(static final)实例成员,在类加载的时候就创建好了单例对象
*/
private static final EagerSingleton m_instance= new EagerSingleton();
/**
*私有构造方法,避免外部创建实例
*/
private EagerSingleton(){
}
/**
*静态工厂方法,返回此类的唯一实例.
*@return EagerSingleton
*/
public static EagerSingleton getInstance(){
return m_instance;
}
}
三、登记式单例
这个单例实际上维护的是一组单例类的实例,将这些实例存放在一个Map(登记薄)中,对于已经登记过的实例,则从工厂直接返回,对于没有登记的,则先登记,而后返回。
/**
* Created by IntelliJ IDEA.
* User: leizhimin
* Date: 2005-9-11
* Time: 15:20:16
*<<Java与模式>>单例模式-登记式单例
*/
public class RegSingleton{
/**
*登记薄,用来存放所有登记的实例
*/
private static Map<String, RegSingleton> m_registry= new HashMap();
//在类加载的时候添加一个实例到登记薄
static{
RegSingleton x= new RegSingleton();
m_registry.put(x.getClass().getName(), x);
}
/**
*受保护的默认构造方法
*/
protected RegSingleton(){
}
/**
*静态工厂方法,返回指定登记对象的唯一实例;
*对于已登记的直接取出返回,对于还未登记的,先登记,然后取出返回
*@param name
*@return RegSingleton
*/
public static RegSingleton getInstance(String name){
if(name== null){
name="RegSingleton";
}
if(m_registry.get(name)== null){
try{
m_registry.put(name,(RegSingleton) Class.forName(name).newInstance());
} catch(InstantiationException e){
e.printStackTrace();
} catch(IllegalAccessException e){
e.printStackTrace();
} catch(ClassNotFoundException e){
e.printStackTrace();
}
}
return m_registry.get(name);
}
/**
*一个示意性的商业方法
*@return String
*/
public String about(){
return"Hello,I am RegSingleton!";
}
}
单列的列子
第一种形式:
public class Singleton{
private Singleton(){}
private static Singleton instance= new Singleton();
public static Singleton getInstance(){
return instance;
}
}
第二种形式:
public class Singleton{
private static Singleton instance= null;
public static synchronized Singleton getInstance(){
if(instance==null)
instance=new Singleton();
return instance;
}
}
文章到此结束,如果本次分享的java中什么是单列和java中单列模式,我要详细点的,麻烦各位给我介绍一下的问题解决了您的问题,那么我们由衷的感到高兴!