继承JPanel类自定义方法后,调用出现问题

我先定义了一个radarpanel类,继承自Jpanel,然后在radarpanel中自定义一个方法 setrange()

 public class radarPanel extends JPanel{
        private int range = 6;

     public void setRange(String option) {
         range = 12;
            System.out.println(range);
            ................//省略
     }
 }

主类中调用定义的方法,结果显示错误

 radarpanel = new radarPanel(); 
        radarpanel.addMouseWheelListener(new MouseWheelListener() {
            public void mouseWheelMoved(MouseWheelEvent e) {
                if (e.getWheelRotation() > 0) {   //减小量程
                    radarpanel.setRange("add");
                }
                if(e.getWheelRotation() < 0){  //增大量程
                    radarpanel.setRange("reduce");
                }
                System.out.println(radarpanel.getRange());
            }
        });

错误提示
图片说明
请指教,不知道是什么问题,谢谢

radarpanel需要类型转化,第三种修改。。。

没有这个方法吧,,,,

你 把自定义的类-----类名改成大写字母开头,,radarPanel ---->RadarPanel

然后你在 报错的那行,radarPanel 确定下是不是 RadarPanel类型的

第一种改法可以
图片说明
谢谢@lijheee

类名是小写,radarPanel = new radarpanel();
radarPanel按理说是可以调用在radarPanel类里面定义的方法setRange()的,但是编译器区分大小写,对radarPanel.setRange()辨别有问题,所以让你强转类型
((radarPanel)radarPanel).setRange()

以后---类名一定要大写开头

找到错误了,我真是太粗心了,定义的时候是JPanel

 private JPanel radrpanel;  //这里错了(´pωq`)

因为RadarPanel是JPanel的子类所以没有报错,让然可以正常调用
改正后一起正常,学习的过程曲曲折折
###感谢各位计算机大神的帮助,在这里不胜感激

找到问题的原因了,因为写了一个jpanel的子类,所以在后期修改的时候,忘记修改定义时候的修改类型了,应该类型是radarpanel,不好意思