北京智奇科技

1、看程序写结果:先判断有没有问题,如果没有,写出结果

 class A {  
    public void show() {  
        show2();  
    }  
    public void show2() {  
        System.out.println("我");  
    }  
}  

class B extends A {  
    //执行B中show(),B中没有show()去A中执行show()
    //在A中执行show(),然后执行show2(),而show2()执行的是B本身的show2()
    //因为它总会查看自己B本身是否存在该方法,如果没有才执行父类的方法
    public void show2() {  
        System.out.println("爱");  
    }  
}  

class C extends B {  
    public void show() {  //执行C中show(),而C中show()调用的是父类的show()
        super.show();     //而B中没有show(),它会执行A中的show(),执行show2()
    }                     //而此时show2()也和上面一样,先访问自己C本身的show2(),如果没有才会访问父类是方法
    public void show2() {  
        System.out.println("你");  
    }  
}  

public class DuoTaiTest4 {  
    public static void main(String[] args) {  
        A a = new B();    //编译看左边,运行看右边
        a.show(); 

        B b = new C();
        b.show();
    }  
}  

答:有问题,爱你

2、请简述Overload(重载)和Override(覆写)的区别。Overloaded和Overriden的方法是否可以改变返回值的类型?

重写:子父类中方法名相同,参数列表相同,返回值的数据类型相同
重载:同一个类中,方法名相同,参数列表不同(参数的顺序、参数的类型、参数的个数)

在重载中,如果仅仅是返回值的类型不同不能定义重载,因为有些时候我们并不关心返回值类型是啥,如果这个时候出现多个方法的方法名相同、参数列表相同,java编译器无法知道我们调用的是哪个方法。

3、Java中final修饰符可以分别用在什么地方?分别表示什么意义?
Final修饰类:这个类不可以被继承
Final修饰方法:这个方法不可以被重写,但是可以被重载
Finla修饰变量:这个变量值是定值,不可以被改变

4、spring中bean的生命周期分哪几个阶段?
Bean定义阶段、bean实例化阶段、bean初始化阶段、bean销毁阶段

5、Spring中对一个bean进行初始化的方式有哪些?
@PostConstruct 标注方法
自定义初始化方法
实现 initializingBean 接口的afterPropertiesSet()方法

6.请实现一个Java方法, 实现以下功能:
入参类型:String,内容:以空格为分割的单词序列,单词个数不固定;
返回类型: String, 内容是将入参保持单词顺序不变,单词中的字母倒置。
例如, 入参:“123 abcd”;返回: “321 dcba”。

package com.leetecode.top100.string.wordsplit;

import java.awt.*;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Stack;

//入参:“123 abcd”;返回: “321 dcba”
public class WordSplit {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] srr = br.readLine().trim().split(" ");//输入字符串
        if(srr.length==0||srr==null){
            return;
        }
        Stack<Character> stack = new Stack<>();
        for(int i=0;i<srr.length;++i){
            for(int j=0;j<srr[i].length();++j){
                stack.push(srr[i].charAt(j));
            }
            while(!stack.isEmpty()){
                System.out.print(stack.pop());
            }
            System.out.print(" ");
        }

    }
}

7、现有数据库表order(订单表):
Order: id userId(用户id) productId(商品id) createTime(下单时间) state(状态1 未支付,2正常,3已退款)price(订单金额) refundPrice(退款金额)
查询最近一个月已退款状态的商品都有哪些?

select productId from `order` where state=3; 

查询最近三个月内,退款总金额是多少?

Select sum(refundprice) from `order` where datediff(now(),createTime)<=90;

正常支付的总金额是多少?

Select sum(price) from `order` where state=2;

用一条sql查询产品名称为“农夫山泉”,“娃哈哈矿泉水”的商品,在最近一个月内 分别售卖了多少?

select p.name, o.price from `order` as o inner join `product` as p on o.productId=p.productId;

8、用户只有在登录后才能访问商品系统,商品系统web部署在tomcat中,一共部署两个实例,请设计一个技术方案,控制没有登录就不能访问商品系统的任何web页面。

全部评论

相关推荐

烤点老白薯:这种东西到时候公众号搜索都有的
点赞 评论 收藏
分享
SadnessAlex:跟三十五岁原则一样,人太多给这些***惯坏了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务