上一题下一题
跳转到
 
 
  世界如此多姿,发展如此迅速,窥一斑未必还能知全豹。但正如万花筒一样,每一个管窥都色彩斑斓。  
 
 
  知识通道 | 学习首页 | 教师首页 | PK首页 | 知识创造首页 | 企业首页 | 登录
 
本文对应知识领域
java经典知识汇总13
作者:未知 申领版权
2010年12月12日 共有 1451 次访问 【添加到收藏夹】 【我要附加题目
受欢迎度:

    23. 实体 BEAN 的属性:
    a. Entity Bean 对数据库中的数据提供了一种对象的视图.
    b.多个 Client 能够共享访问同一个 Entity Bean ,多个 Client 也能够同时地共享访问同一个 Entity Bean .
    c.Entity Bean 通过事务的上下文来访问或更新下层的数据.这样,数据的完整性就能够被保证.
    d.Entity Bean 能够存活相对较长的时间,并且状态是持续的.只要数据库存在, Entity Bean 就一直存活,即使EJB容器崩溃了, Entity Bean 也是存活的.
    
    24. STATES SESSION BEAN 与 STATELESS SESSION BEAN 的区别
    a.  一个具有状态的Session Bean 称为有状态的Session Bean ,当用户终止与 Session Bean 互操作的时候,会话终止了, Bean 也不再拥有状态值.
    b.  无状态的Session Bean 并不掌握它的客户的信息或者状态,用户能够调用Bean的一些方法来完成一些操作.但是,Bean只是在方法调用的时候才知道用户的参数变量,当方法调用完成的时候, Bean不再保持这些参数变量.
    
    25、EJB需直接实现它的业务接口或Home接口吗,请简述理由.
    远程接口和Home接口不需要直接实现,他们的实现代码是由服务器产生的,程序运行中对应实现类会作为对应接口类型的实例被使用。
    
    CORBA方面
    1、CORBA是什么?用途是什么?
    答:CORBA 标准是公共对象请求代理结构(Common Object Request Broker Architecture),由对象管理组织 (Object Management Group,缩写为 OMG)标准化。它的组成是接口定义语言(IDL), 语言绑定(binding:也译为联编)和允许应用程序间互操作的协议。 其目的为:
    用不同的程序设计语言书写
    在不同的进程中运行
    为不同的操作系统开发
    
    LINUX方面
    1、LINUX下线程,GDI类的解释。
    答:LINUX实现的就是基于核心轻量级进程的"一对一"线程模型,一个线程实体对应一个核心轻量级进程,而线程之间的管理在核外函数库中实现。
    GDI类为图像设备编程接口类库。
    
    2、解释下面关于J2EE的名词
    
    (1)JNDI:Java Naming & Directory Interface,JAVA命名目录服务.主要提供的功能是:提供一个目录系统,让其它各地的应用程序在其上面留下自己的索引,从而满足快速查找和定位分布式应用程序的功能.
    (2)JMS:Java Message Service,JAVA消息服务.主要实现各个应用程序之间的通讯.包括点对点和广播.
    (3)JTA:Java Transaction API,JAVA事务服务.提供各种分布式事务服务.应用程序只需调用其提供的接口即可.
    (4)JAF: Java Action FrameWork,JAVA安全认证框架.提供一些安全控制方面的框架.让开发者通过各种部署和自定义实现自己的个性安全控制策略.
    (5)RMI:Remote Method Interface,远程方法调用
    
    Java编程与程序运行结果
    1、Java编程,打印昨天的当前时刻
    public class YesterdayCurrent{
    public void main(String[] args){
    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.DATE, -1);
    System.out.println(cal.getTime());
    }
    }
    2、文件读写,实现一个计数器
    public int getNum(){
    int i = -1;
    try{
    String stri="";
    BufferedReader in = new BufferedReader(new FileReader(f));
    while((stri=in.readLine())!=null){
    i = Integer.parseInt(stri.trim());
    }
    in.close();
    }catch(Exception e){
    e.printStackTrace();
    }
    return i;
    }
    
    
    
    public void setNum(){
    int i = getNum();
    i ;        
    try{
    PrintWriter out=new PrintWriter(new BufferedWriter(new FileWriter(f,false)));  
    out.write(String.valueOf(i));            // 可能是编码的原因,如果直接写入int的话,将出现java编码和windows编码的混乱,因此此处写入的是String
    out.close() ;
    }catch(Exception e){
    e.printStackTrace();
    }
    }
    3.、指出下面程序的运行结果
    class A {
    static {
    System.out.print("1");
    }
    
    public A() {
    System.out.print("2");
    }
    }
    
    class B extends A {
    static {
    System.out.print("a");
    }
    
    public B() {
    System.out.print("b");
    }
    }
    
    public class Hello {
    public static void main(String[] ars) {
    A ab = new B(); // 执行到此处,结果: 1a2b
    ab = new B(); // 执行到此处,结果: 1a2bab
    }
    }
    注:类的static 代码段,可以看作是类首次加载(被虚拟机加载)执行的代码,而对于类的加载,首先要执行其基类的构造,再执行其本身的构造
    4、现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,提供reset
    显示被隐藏内容
    import java.util.*;
    
    public class bycomma {
    public static String[] splitStringByComma(String source) {
    if (source == null || source.trim().equals(""))
    return null;
    StringTokenizer commaToker = new StringTokenizer(source, ",");
    String[] result = new String[commaToker.countTokens()];
    int i = 0;
    while (commaToker.hasMoreTokens()) {
    result[i] = commaToker.nextToken();
    i ;
    }
    return result;
    }
    
    public static void main(String args[]) {
    String[] s = splitStringByComma("5,8,7,4,3,9,1");
    int[] ii = new int[s.length];
    for (int i = 0; i < s.length; i ) {
    ii[i] = Integer.parseInt(s[i]);
    }
    Arrays.sort(ii);
    // asc
    for (int i = 0; i < s.length; i ) {
    System.out.println(ii[i]);
    }
    // desc
    for (int i = (s.length - 1); i >= 0; i--) {
    System.out.println(ii[i]);
    }
    }
    }
    5、金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)->(一千零一拾一元整)输出。
    显示被隐藏内容
    package test.format;
    
    import java.text.NumberFormat;
    import java.util.HashMap;
    
    public class SimpleMoneyFormat {
    public static final String EMPTY = "";
    
    public static final String ZERO = "零";
    
    public static final String ONE = "壹";
    
    public static final String TWO = "贰";
    
    public static final String THREE = "叁";
    
    public static final String FOUR = "肆";
    
    public static final String FIVE = "伍";
    
    public static final String SIX = "陆";
    
    public static final String SEVEN = "柒";
    
    public static final String EIGHT = "捌";
    
    public static final String NINE = "玖";
    
    public static final String TEN = "拾";
    
    public static final String HUNDRED = "佰";
    
    public static final String THOUSAND = "仟";
    
    public static final String TEN_THOUSAND = "万";
    
    public static final String HUNDRED_MILLION = "亿";
    
    public static final String YUAN = "元";
    
    public static final String JIAO = "角";
    
    public static final String FEN = "分";
    
    public static final String DOT = ".";
    
    private static SimpleMoneyFormat formatter = null;
    
    private HashMap chineseNumberMap = new HashMap();
    
    private HashMap chineseMoneyPattern = new HashMap();
    
    private NumberFormat numberFormat = NumberFormat.getInstance();
    
    private SimpleMoneyFormat() {
    numberFormat.setMaximumFractionDigits(4);
    numberFormat.setMinimumFractionDigits(2);
    numberFormat.setGroupingUsed(false);
    
    chineseNumberMap.put("0", ZERO);
    chineseNumberMap.put("1", ONE);
    chineseNumberMap.put("2", TWO);
    chineseNumberMap.put("3", THREE);
    chineseNumberMap.put("4", FOUR);
    chineseNumberMap.put("5", FIVE);
    chineseNumberMap.put("6", SIX);
    chineseNumberMap.put("7", SEVEN);
    chineseNumberMap.put("8", EIGHT);
    chineseNumberMap.put("9", NINE);
    chineseNumberMap.put(DOT, DOT);
    
    chineseMoneyPattern.put("1", TEN);
    chineseMoneyPattern.put("2", HUNDRED);
    chineseMoneyPattern.put("3", THOUSAND);
    chineseMoneyPattern.put("4", TEN_THOUSAND);
    chineseMoneyPattern.put("5", TEN);
    chineseMoneyPattern.put("6", HUNDRED);
    chineseMoneyPattern.put("7", THOUSAND);
    chineseMoneyPattern.put("8", HUNDRED_MILLION);
    }
    
    public static SimpleMoneyFormat getInstance() {
    if (formatter == null)
    formatter = new SimpleMoneyFormat();
    return formatter;
    }
    
    public String format(String moneyStr) {
    checkPrecision(moneyStr);
    String result;
    result = convertToChineseNumber(moneyStr);
    result = addUnitsToChineseMoneyString(result);
    return result;
    }
    
    public String format(double moneyDouble) {
    return format(numberFormat.format(moneyDouble));
    }
    
    public String format(int moneyInt) {
    return format(numberFormat.format(moneyInt));
    }
    
    public String format(long moneyLong) {
    return format(numberFormat.format(moneyLong));
    }
    
    public String format(Number moneyNum) {
    return format(numberFormat.format(moneyNum));
    }
    
    private String convertToChineseNumber(String moneyStr) {
    String result;
    StringBuffer cMoneyStringBuffer = new StringBuffer();
    for (int i = 0; i < moneyStr.length(); i ) {
    cMoneyStringBuffer.append(chineseNumberMap.get(moneyStr.substring(
    i, i   1)));
    }
    // 拾佰仟万亿等都是汉字里面才有的单位,加上它们
    int indexOfDot = cMoneyStringBuffer.indexOf(DOT);
    int moneyPatternCursor = 1;
    for (int i = indexOfDot - 1; i > 0; i--) {
    cMoneyStringBuffer.insert(i, chineseMoneyPattern.get(EMPTY
      moneyPatternCursor));
    moneyPatternCursor = moneyPatternCursor == 8 ? 1
    : moneyPatternCursor   1;
    }
    
    String fractionPart = cMoneyStringBuffer.substring(cMoneyStringBuffer
    .indexOf("."));
    cMoneyStringBuffer.delete(cMoneyStringBuffer.indexOf("."),
    cMoneyStringBuffer.length());
    while (cMoneyStringBuffer.indexOf("零拾") != -1) {
    cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零拾"),
    cMoneyStringBuffer.indexOf("零拾")   2, ZERO);
    }
    while (cMoneyStringBuffer.indexOf("零佰") != -1) {
    cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零佰"),
    cMoneyStringBuffer.indexOf("零佰")   2, ZERO);
    }
    while (cMoneyStringBuffer.indexOf("零仟") != -1) {
    cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零仟"),
    cMoneyStringBuffer.indexOf("零仟")   2, ZERO);
    }
    while (cMoneyStringBuffer.indexOf("零万") != -1) {
    cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零万"),
    cMoneyStringBuffer.indexOf("零万")   2, TEN_THOUSAND);
    }
    while (cMoneyStringBuffer.indexOf("零亿") != -1) {
    cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零亿"),
    cMoneyStringBuffer.indexOf("零亿")   2, HUNDRED_MILLION);
    }
    while (cMoneyStringBuffer.indexOf("零零") != -1) {
    cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零零"),
    cMoneyStringBuffer.indexOf("零零")   2, ZERO);
    }
    if (cMoneyStringBuffer.lastIndexOf(ZERO) == cMoneyStringBuffer.length() - 1)
    cMoneyStringBuffer.delete(cMoneyStringBuffer.length() - 1,
    cMoneyStringBuffer.length());
    cMoneyStringBuffer.append(fractionPart);
    
    result = cMoneyStringBuffer.toString();
    return result;
    }
    
    private String addUnitsToChineseMoneyString(String moneyStr) {
    String result;
    StringBuffer cMoneyStringBuffer = new StringBuffer(moneyStr);
    int indexOfDot = cMoneyStringBuffer.indexOf(DOT);
    cMoneyStringBuffer.replace(indexOfDot, indexOfDot   1, YUAN);
    }
    }
    

 

相关新闻

知识创新改变世界进程
早盘信息汇总
卡尔维诺:为什么要读经典?
缔约立富---知识更重要(2)
缔约立富---知识更重要(1)
缔约立富---赚钱靠真智慧
缔约立富---知识发富
设计模式之Iterator
设计模式之Visitor
设计模式之Interpreter(解释器)

您可能对这些感兴趣  

第7讲 综合分析BIM在运用与推广中的障碍问题
考核学生质量的困难
日本福岛核电站事故初步分析
论科技异化与科技人化
中国科技计划项目管理现状与对策
财政科技资金的审计重点和内容
软科学研究机构在政府决策中的功效、困境及对策研究
打造超级DOS系统(下)
DOS命令基础应用(6)
打造超级DOS系统(上)

题目筛选器
日期:
类型:
状态:
得分: <=
分类:
作者:
职业:
关键字:
搜索

 
 
 
  焦点事件
 
  知识体系
 
  职业列表
 
 
  最热文章
 
 
  最多引用文章
 
 
  最新文章
 
 
 
 
网站介绍 | 广告服务 | 招聘信息 | 保护隐私权 | 免责条款 | 法律顾问 | 意见反馈
版权所有 不得转载
沪ICP备 10203777 号 联系电话:021-54428255
  帮助提示    
《我的太学》是一种全新的应用,您在操作中遇到疑问或者问题,请拨打电话13564659895,15921448526。
《我的太学》